[ 
https://issues.apache.org/jira/browse/DISPATCH-336?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15283024#comment-15283024
 ] 

Ted Ross commented on DISPATCH-336:
-----------------------------------

The increases in latency that you see are the result of buffering of the 
pre-settled (fire and forget) messages in the router.  This will also cause 
large memory usage in the router(s).

As of the current snapshot, end-to-end flow control is not in effect for 
pre-settled deliveries.  Since your producers are outrunning your consumers, 
the resultant buffering increases memory usage and latency.

You will get much better results if you use unsettled messages because the 
routers will apply flow control across the network and there will be no 
excessive buffering.  This should result in much more uniform latency that is 
consistent with the lowest latencies you see in your pre-settled test.  Our 
internal testing shows no throughput cost for using unsettled deliveries.

To solve the pre-settled problem, we can do one of two things:  We can drop 
excessive deliveries to avoid buffer expansion; Alternatively we've considered 
using an unsettled delivery mode across the network even for pre-settled 
deliveries to get the benefits of flow-control.  In this case, the producers 
and consumers would not see any different behavior. The messages would be 
delivered pre-settled.

If you have an opinion as to which works better, we'd be interested in hearing 
it.

As a comparison, doing a large-volume throughput/latency test using pre-settled 
deliveries is like doing the same over an IP network using UDP datagrams.  Such 
a test is very taxing on the underlying network. Real applications should not 
use pre-settled for high-volume traffic.

> Very high latency for fire-and-forget sender
> --------------------------------------------
>
>                 Key: DISPATCH-336
>                 URL: https://issues.apache.org/jira/browse/DISPATCH-336
>             Project: Qpid Dispatch
>          Issue Type: Bug
>          Components: Routing Engine
>    Affects Versions: 0.6.0
>         Environment: Debian 8.3, Apache Qpid Proton 0.12.2 for drivers and 
> dependencies, Hardware: 2 CPUs, 15 GB RAM, 60 GB HDD on 2 separate machines
>            Reporter: Vishal Sharda
>            Priority: Critical
>         Attachments: config1.conf, config2.conf, output_1S_1R.txt
>
>
> We are running two interconnected routers with 1 fire-and-forget sender 
> connected to 1 router and 1 receiver connected to another router.  We are 
> observing increasing latency for the messages irrespective of number messages 
> sent.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to