Hi Tomas, The work for QPID-8032 is done on master. If you could repeat your test-case with Broker-J compiled for master and let us know how performance changes (improves, hopefully a lot). Once I have heard back from you I'll look to have this included in a 7.0.1 very soon.
Kind regards, Keith Wall. On 26 November 2017 at 14:54, Keith W <[email protected]> wrote: > Hi Tomas > > Thanks for the attachments. > > With your Broadcaster code, which sends persistent messages > asynchronously, I do see inferior performance from Broker J than the > CPP Broker. I am using proton master (fa80534) > > Currently for this use-case, Broker-J commits synchronously after each > delivery (see StandardReceivingLinkEndpoint#receiveDelivery. The > pertinent part is its use of an AutoCommitTransaction and the fact > that AutoCommitTransaction#enqueue uses a synchronous #commitTran) and > this will explain some (if not all) of the performance difference. As > Rob mentioned on the 10th November in this thread, the older protocols > already have an optimisation for this use-case (involving > AsyncAutoCommitTransaction) which should improve performance on the > AMQP 1.0 path. This was raised as QPID-8032. I try and include this > in a 7.0.1 soon. > > This doesn't explain your observation about performance when using > Qpid JMS Client which is doing a synchronous send of persistent > messages, but as I commented above, I cannot reproduce the problem: I > see very similar performance for Broker-J and CPP on my hardware. > > cheers Keith. > > On 24 November 2017 at 13:06, Tomas Soltys <[email protected]> wrote: >> Hi Keith, >> >> Please find attached cpp_vs_java.gz >> <http://qpid.2158936.n2.nabble.com/file/t365522/cpp_vs_java.gz> . This >> archive contains: >> * *java* - setup of Java broker (v7.0.0) >> * *cpp* - setup of C++ broker (v1.36.0) >> * *proton-client* - C++client based on Qpid proton (v0.18.1) >> * *java_trace.log* - trace log from client sending 20 messages (10240 Bytes >> each) to Java broker >> * *java_trace.log* - trace log from client sending 20 messages (10240 Bytes >> each) to C++ broker >> >> One thing I've noticed in logs is that C++ broker is sending dispositions in >> chunks of 5 whereas Java broker does this for each message separately. >> >> Best regards, >> Tomas >> >> >> >> -- >> Sent from: http://qpid.2158936.n2.nabble.com/Apache-Qpid-users-f2158936.html >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [email protected] >> For additional commands, e-mail: [email protected] >> --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
