--
You received this message because you are subscribed to the Google Groups "rabbitmq-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rabbitmq-users+unsubscribe@googlegroups.com.
To post to this group, send email to rabbitmq-users@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "rabbitmq-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rabbitmq-users+unsubscribe@googlegroups.com.
To post to this group, send email to rabbitmq-users@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Your analysis has some merit but ignores the prefetch aspect, publisherconfirms and the fact that TCP sockets perform their own buffering,plus neither Shovel (unless you use QoS = 1 and the most conservative ack mode) nor TCPwork synchronously.So I don't think the math is quite that simple in practice.
On Thu, Feb 9, 2017 at 1:34 PM, Sokolovskiy Roman <sokolovs...@gmail.com> wrote:
Good day,We observed a rather strange behavior of a rabbit shovel replicating messages between datacenters (WAN) during network latency issues.The performance of rabbit-shovel had drastically decreased, while ordinary send over TCP socket with same rate (~ 300 Kb/sec, 30 msgs - 10 msgs/sec) worked just fine.While digging deeper inside rabbitmq-shovel source code it appeared to me that a single rabbit_shovel_worker sends messages overamqp_channel, which, under the covers, uses ordinary bang operator to send messages. As far as I understand, in that case multiplyingthe latency of a network by a factor of 2 will increase message processing time by a factor of 4 at least (TCP send + TCP ack).Are my reverse-engineered deductions correct? If so, is it possible to organize some kind of batching on the sender in order to increasethroughput on unstable networks as it is done under the covers of ZeroMQ sockets?Thank you in advance,Roma
--
You received this message because you are subscribed to the Google Groups "rabbitmq-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rabbitmq-user...@googlegroups.com.
To post to this group, send email to rabbitm...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
rabbit_shovel_worker:handle_info({#'basic.deliver' ...)-> rabbit_shovel_worker:publish(... #'basic.publish' ...)-> ok = amqp_channel:call(OutboundChan, ...) // which is remote, as far as I understand (?)-> gen_server:call(...)
%% Note that for asynchronous methods, the synchronicity implied by%% 'call' only means that the client has transmitted the method to%% the broker. It does not necessarily imply that the broker has%% accepted responsibility for the message.
Your analysis has some merit but ignores the prefetch aspect, publisherconfirms and the fact that TCP sockets perform their own buffering,plus neither Shovel (unless you use QoS = 1 and the most conservative ack mode) nor TCPwork synchronously.So I don't think the math is quite that simple in practice.
On Thu, Feb 9, 2017 at 1:34 PM, Sokolovskiy Roman <sokolovs...@gmail.com> wrote:
Good day,We observed a rather strange behavior of a rabbit shovel replicating messages between datacenters (WAN) during network latency issues.The performance of rabbit-shovel had drastically decreased, while ordinary send over TCP socket with same rate (~ 300 Kb/sec, 30 msgs - 10 msgs/sec) worked just fine.While digging deeper inside rabbitmq-shovel source code it appeared to me that a single rabbit_shovel_worker sends messages overamqp_channel, which, under the covers, uses ordinary bang operator to send messages. As far as I understand, in that case multiplyingthe latency of a network by a factor of 2 will increase message processing time by a factor of 4 at least (TCP send + TCP ack).Are my reverse-engineered deductions correct? If so, is it possible to organize some kind of batching on the sender in order to increasethroughput on unstable networks as it is done under the covers of ZeroMQ sockets?Thank you in advance,Roma
--
You received this message because you are subscribed to the Google Groups "rabbitmq-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rabbitmq-user...@googlegroups.com.
To post to this group, send email to rabbitm...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
To unsubscribe from this group and stop receiving emails from it, send an email to rabbitmq-users+unsubscribe@googlegroups.com.
To post to this group, send email to rabbitmq-users@googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to rabbitmq-users+unsubscribe@googlegroups.com.
To post to this group, send email to rabbitmq-users@googlegroups.com.