[
https://issues.jboss.org/browse/JGRP-2057?page=com.atlassian.jira.plugin....
]
Bela Ban commented on JGRP-2057:
--------------------------------
The longer it takes to add a message to the hashmap, the more messages are sent by the
bundler and that increases _throughput_. Apparently, lock contention on the send-queue in
{{TransferQueueBundler}} between the senders (producers) and the sending thread (consumer)
leads to more messages accumulating in the queue and therefore bigger message bundles with
more messages.
{{SenderSendsBundler}} has much less contention, only an AtomicLong is incremented and
decremented, and so fewer messages are in a batch, with the result being less throughput.
Latency, however, is slightly better with {{SenderSendsBundler}}. Plus, its performance
gets much better with more sending threads.
Message bundler improvements
----------------------------
Key: JGRP-2057
URL:
https://issues.jboss.org/browse/JGRP-2057
Project: JGroups
Issue Type: Enhancement
Reporter: Bela Ban
Assignee: Bela Ban
Fix For: 4.0
* {{SingletonAddress}} is not needed anymore as we removed the shared transport in 4.0
** This slows down the bundler as it is used as key to the bundler hashmaps
* {{SenderSendsBundler}}: send messages outside the lock scope. This requires us to use a
number of bundler hashmaps, or making a shallow copy of the buckets of the current
hashmap, before clearing it
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)