-
Enhancement
-
Resolution: Unresolved
-
Major
-
None
-
None
-
False
-
False
-
The default bundler TransferQueueBundler is biased towards high throughput, but not necessarily for low latency.
Investigate a configuration and/or changes to provide low latency, e.g. for synchronous RPCs. This includes:
- Changes to TransferQueueBundler (see TransferQueueBundler2)
- Use of BATCH, especially for smaller messages
- New flag LOW_LATENCY, which can be handled differently by protocols. For example, flow control might bypass messages with this flag
- Removal of UFC / MFC for low latency messages (see above)
- Increasing ack_threshold im UNICAST3
- Use of async invocation handlers: http://www.jgroups.org/manual5/index.html#AsyncInvocation
- Document: https://github.com/belaban/JGroups/blob/master/doc/design/LatencyVersusThroughput.txt