title: python & zeroMQ -- Capacity to Handle Messages of Large Size?
body: <p>I'd like to use <code>python</code> to build an app that is similar to <a href="http://zguide.zeromq.org/page%3aall#Divide-and-Conquer" rel="nofollow"><code>zeroMQ</code>'s ventilator / sink scheme</a></p>
  
  <p>Suppose that we have <strong>10 Workers</strong>, all running on the same <em>multi-core</em> server. </p>
  
  <p>Let's say that every <em>2[sec]</em> or so, each <strong>Worker</strong> pushes to the <strong>Sink</strong> a message of size 5[MB]. So, the <strong>Sink</strong> has to handle a total of 50[MB] ( = 10 x 5[MB] ) every <em>2[sec]</em> or so.</p>
  
  <p>Had the 10 <strong>Workers</strong> been on different machines, I <em>know</em> that <em>the network</em> could have been a potential bottleneck. </p>
  
  <p>Had the 10 <strong>Workers</strong> had to write their data to disk (I/O), I <em>know</em> that <em>the disk</em> could have been a potential bottleneck. </p>
  
  <p>Given the fact that all the <strong>10 Workers</strong> are <strong>on the <em>same machine</em></strong>, what bottlenecks should one expect? </p>
  
  <p>For example, can the same <strong>10 Workers</strong> each push a message of size 10[MB] every <em>2[sec]</em> or so? 
  Can they push a message of size 20[MB] every <em>2[sec]</em> or so? </p>
  
  <p>What are <code>zmq</code>'s limitations? </p>
  
  <p>What types of bottlenecks should one expect when using <code>python</code> and <code>zeroMQ</code> in a <code>Linux</code> environment?</p>