The C++ broker operates a journal flush on a timer, which defaults to 0.5 seconds. For AMQP 1.0 usage this timer is the only event that makes the broker flush the durable messages to disk, and it doesnt acknowledge a durable message until it has, so for synchronous sends (as it sounds like you are doing) this can noticeably gate the throughput of a single sender of durable messages as you observed.
It was made configurable with the journal-flush-timeout option in https://issues.apache.org/jira/browse/QPID-6730 for this reason, to allow specifically tuning it lower to improve performance in this specific case. On Wed, 19 May 2021 at 05:00, Namitha, Nancy <nami...@hpe.com> wrote: > > Hi Team, > I have deployed Qpid Broker C++ v 1.39 package on Ubuntu 18.4. > And have enabled persistence using linearstore libraries. And I am using > AMQP 1.0 Client Library for GO (https://github.com/Azure/go-amqp) for > sending and receiving messages. > When I set the message to be persistent, and send it, it takes min .5 secs > to push the message to the queue, the function to return. If the Message is > not persistent, it takes less than 1 ms to send the message. I am pushing > the message to a Persistent Queue > > I would like to understand if this behavior is expected if the message is set > to persistent, or is there any configuration or properties that needs to be > set to reduce the time taken to push the messages I did not find any proper > documentation for persistence. > > Any pointer or suggestion will be helpful. > > Thanks & Regards, > Nancy --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org For additional commands, e-mail: users-h...@qpid.apache.org