Closed rtista closed 4 years ago
I've found the answer to this, it was an Artemis server limitation, however, the documentation is still pretty scarce on these topics. Basically, there is a stompConsumerCredits variable which can be placed on STOMP acceptors in the Artemis broker.xml configuration which defines the maximum amount of messages in bytes which a consumer may receive before acknowledging them.
Once I modified the server configuration, it worked perfectly:
<acceptor name="stomp">tcp://0.0.0.0:61613?tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;protocols=STOMP;useEpoll=true;stompConsumerCredits=256000</acceptor>
Hello, I'm having a problem with a stomp.py 6.0.1 + Artemis 2.12.0 implementation. I created the following consumer class to provide a synchronous interface for my consuming entities:
It is then used like this:
The problem I'm facing is that the consumer only receives 45 messages at a time, although my prefetch limit is set to 1000 by using "consumer.prefetchSize" header when subscribing. This consumer was supposed to retrieve 1000 messages (there are 800K messages in queue) and bulk write them to a table into a database and it only receives 45 which makes it too slow... Does anyone know what might be happening?