How do you manage your consumer/worker processes?  Does anyone look at the queue lengths and automatically adjust the number of consumers?<div><br></div><div>Is anyone using <meta http-equiv="content-type" content="text/html; charset=utf-8"><a href="http://supervisord.org/">http://supervisord.org/</a> for managing consumer processes?</div>

<div><br></div><div><br></div><div><br></div><div>I have a pool of servers to run a small collection of consumers that do different tasks.  As load dictates (by looking at messages waiting in queues) I&#39;d like to be able to dynamically re-balance the mixture of consumers.  For example, if a lot of requests come in for report generation and I have a lot of idle consumers that do image manipulation I&#39;d like to reduce the number of image processing consumers and add more report generation consumers.  </div>

<div><br></div><div>(Many of my consumers are pretty simple in that they just run some command line tool.)</div><div><br></div><div>What&#39;s your approach?</div><div><br></div><div><br></div><div>And do you tend to write consumers that are small stand-alone programs (something easy for Supervisor to manage) or write larger (perhaps more complex) stand-alone apps that listen to a queue and fork (or threads) workers do handle incoming messages?</div>

<div><br></div><div><br></div><div><br>-- <br>Bill Moseley<br><a href="mailto:moseley@hank.org" target="_blank">moseley@hank.org</a><br>
</div>