← Back to team overview

openstack team mailing list archive

Re: eventlet weirdness

 

On Mar 2, 2012, at 12:50 PM, Jay Pipes wrote:
> 
> We are not using multiprocessing, no.
> 
> We simply start multiple worker processes listening on the same socket, with each worker process having an eventlet greenthread pool.
> 
> You can see the code (taken from Swift and adapted by Chris Behrens and Brian Waldon to use the object-oriented Server approach that Glance/Keystone/Nova uses) here:
> 
> https://github.com/openstack/glance/blob/master/glance/common/wsgi.py
> 
> There is a worker = XXX configuration option that controls the number of worker processes created on server startup. A worker value of 0 indicates to run identically to the way Nova currently runs (one process with an eventlet pool of greenthreads)

This would be excellent to add to nova as an option for performance reasons.  Especially since you can fallback to the 0 version. I'm always concerned with mixing threading and eventlet as it leads to really odd bugs, but it sounds like HP has vetted it.  If we keep 0 as the default I don't see any reason why it couldn't be added.

Vish

References