Hi<div><br></div><div>I'm trying to get a graps on the different programming models offered by 0MQ but I'm pretty much lost. Could you point me to the best documentation and sample code for 0MQ 2.X?</div><div><br></div>

<div>Specifically I was thinking about implementing the following scenario in 0MQ and wonder how to do it best. </div><div><br></div><div>There are many clients (C1-CN). Clients may be hosted on several machines. Every client generates a request, sends it and waits for a response. Responses are generated by workers (W1-WM), which are symmetrical (exactly the same - every worker can service any request). Workers as well may be hosted on several machines (different than clients' machines). It is assumed that workers can fail, so a failed (or timed out) request should be retried so that another worker picks it up and generates a response. </div>

<div><br></div><div>The typical architecture would like this:</div><div><br></div><div><font class="Apple-style-span" face="'courier new', monospace">C1 \              /W1</font></div><div><font class="Apple-style-span" face="'courier new', monospace">C2  ---- queue --- W2</font></div>

<div><font class="Apple-style-span" face="'courier new', monospace">..                 ..</font></div><div><font class="Apple-style-span" face="'courier new', monospace">CN /              \WM</font></div>
<div>
<font class="Apple-style-span" face="arial, helvetica, sans-serif"><br></font></div><div><font class="Apple-style-span" face="arial, helvetica, sans-serif">Queue handles workers registration, load-balancing and retrying. What is the best way to implement it using 0MQ?</font></div>

<div><font class="Apple-style-span" face="arial, helvetica, sans-serif"><br></font></div><div><font class="Apple-style-span" face="arial, helvetica, sans-serif">Best regards<br clear="all"></font><br>-- <br>Marcin Gozdalik<br>


</div>