From Wikipedia, the free encyclopedia
  (Redirected from Talk:ØMQ)
Jump to: navigation, search
WikiProject Software / Computing   
WikiProject icon This article is within the scope of WikiProject Software, a collaborative effort to improve the coverage of software on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
 ???  This article has not yet received a rating on the project's quality scale.
 ???  This article has not yet received a rating on the project's importance scale.
Taskforce icon
This article is supported by WikiProject Computing.

ØMQ can outperform raw TCP in terms of throughput[edit]

"Utilizing a message batching technique, ØMQ can outperform raw TCP in terms of throughput" is a polemic claim made by the ØMQ developers, but it is (deliberately) misleading. Since TCP is (for the most time) the underlying transport, ØMQ does not and cannot "outperform" TCP in any way.

What ØMQ really does is send any number of messages that are in the buffer at the time the socket becomes ready in one batch. This is basically a "opportunistic, lucky chance Nagle's algorithm" without a timeout.

A more concise wording would be: ØMQ can maintain low latency while outperforming a very naive implementation sending individual small messages over a TCP_NODELAY socket by batching several messages into a batch opportunistically. It does, on the other hand, not incur the latency of a TCP socket with Nagle's algorithm enabled, as there is no fixed timeout.

Your point is correct and must be addressed but your suggestion does not seem more concise! Paul Beardsell (talk) 17:54, 7 May 2013 (UTC)
As an aside what a great improvement 0MQ is over MQ generally! I once was given the great general advice: "MIddleware? Just say no!". 0MQ does a great job while avoiding some of the overly complex MQ implementations I have seen, where the implementation of the MQ and MQ-similar middleware often complicated rather than simplified the message queue problem being addressed. Paul Beardsell (talk) 17:54, 7 May 2013 (UTC)
I've reworded that claim to be more accurate. I'm not sure if sending messages individually is "very naive"; opportunistic batching is very hard to do right, so typical apps (and frameworks) do not do it. Which is why 0MQ seems faster than "typical TCP apps". Pieter Hintjens (talk) 12:14, 14 June 2013 (UTC)

Reader feedback: more eleberated description ...[edit]

Uwydoc posted this comment on 7 August 2013 (view all feedback).

more eleberated description of the common patterns, which are described in the 'Technology' section, would be helpful

I guess it should be pictures. --4th-otaku (talk) 01:21, 6 October 2013 (UTC)