[rabbitmq-discuss] Ingress does not work for me and the RMQ goes down
Simon MacMullen
simon at rabbitmq.com
Fri Apr 5 13:36:57 BST 2013
On 05/04/13 13:18, Cermak, Marek wrote:
> Hi Simon,
> yes, I use direct for both consumer and publisher. They run in one node, RMQ is in another.
In that case you'll need to participate in the internal flow control
scheme (which is not related to register_flow_handler) on the publisher
side. This is slightly more fiddly:
* Use amqp_channel:cast_flow/3 instead of amqp_channel:cast/3 to publish.
* Be prepared to receive {bump_credit, Msg}, and pass that Msg to
credit_flow:handle_bump_msg(Msg).
* Use credit_flow:blocked/0 to determine if you are allowed to publish.
That's if you have a single (class of) processes which publish. If you
have a pipeline of processes through which messages pass then you might
want to extend the same flow control mechanism through the pipeline. See
for example the pipeline
rabbit_stomp_reader -> rabbit_stomp_processor -> amqp_channel.
Cheers, Simon
--
Simon MacMullen
RabbitMQ, VMware
More information about the rabbitmq-discuss
mailing list