Hello, we are trying to achieve hight througput using persistent messages together with sync send and queues. However we realised there are some limitations that could be maybe resolved or explained but you.
Scenario 1 - Speed ok , unusable with springs integration Consumers and producers are connected using multiple separate connections /40 producers using 40 connections , 40 consumers using 40 connection per queue/ . With this scenario we achieve very high throughput of cca 500 000 messages per minute. However our dev framework is springs and it only allows one connection and concurency is solved on session bases. Scenario 2 - Producing with multiple connections no consumers Producers connected using multiple separate connections same as in scenario 1 but no consumers are connected at time of producing. I would expect rate of writing to kahadb to be same as in scenario 1 but it does not happen. Message production rate is at cca 18 000msg/minute. I do not really understand this as messages in scenarion 1 also have to pass persistent store but do so at much much higher rates when they have consumers connected with dedicated connections. Scenario 3 - One connection and multiple sessions for consumers and same for producers /1 connection - 40 consumer sessions and 1 connection and 40 producer sessions. This works fine with springs integration but the performace is again very slow at cca 18 000msg/minute. Producer flow contor is switched off and no memory limits on queue are imposed so throttling is not an option.We use single broker so NOB options do not interfere. Leaving springs integration and using multiple connections for producers and consumers is also not a option. Having such low througput as in scenario 2) and scenario 3) is also not a option. Could you please advice what is the problem with using 1 connection and multiple session for high throughput is it amq thread model? I can imagine some limits due to single socket used but I would not think the impact on throughput would be so huge. Also could you please explain why producing with no consumers is so slow compared to producing with multiple consumers connected each by own connection? Thanks for answers -- View this message in context: http://activemq.2283324.n4.nabble.com/Big-difference-in-throughput-when-using-dedicated-connection-vs-sessions-and-sendsync-pers-messages-tp4673146.html Sent from the ActiveMQ - User mailing list archive at Nabble.com.