← Back to team overview

openstack team mailing list archive

Re: eventlet weirdness

 

On Fri, Mar 2, 2012 at 4:10 PM, Monsyne Dragon <mdragon@xxxxxxxxxxxxx> wrote:
>
> On Mar 2, 2012, at 9:17 AM, Jay Pipes wrote:
>
>> On 03/02/2012 05:34 AM, Day, Phil wrote:
>>> In our experience (running clusters of several hundred nodes) the DB performance is not generally the significant factor, so making its calls non-blocking  gives only a very small increase in processing capacity and creates other side effects in terms of slowing all eventlets down as they wait for their turn to run.
>>
>> Yes, I believe I said that this was the case at the last design summit -- or rather, I believe I said "is there any evidence that the database is a performance or scalability problem at all"?
>>
>>> That shouldn't really be surprising given that the Nova DB is pretty small and MySQL is a pretty good DB - throw reasonable hardware at the DB server and give it a bit of TLC from a DBA (remove deleted entries from the DB, add indexes where the slow query log tells you to, etc) and it shouldn't be the bottleneck in the system for performance or scalability.
>>
>> ++
>>
>>> We use the python driver and have experimented with allowing the eventlet code to make the db calls non-blocking (its not the default setting), and it works, but didn't give us any significant advantage.
>>
>> Yep, identical results to the work that Mark Washenberger did on the same subject.
>>
>
> Has anyone thought about switching to gevent?   It's similar enough to eventlet that the port shouldn't be too bad, and because it's event loop is in C, (libevent), there are C mysql drivers (ultramysql) that will work with it without blocking.

We've been exploring this possibility at DreamHost, and chatted with
some other stackers about it at various meat-space venues. Fwiw, it's
something we'd be very interested in supporting (starting with as much
test coverage as possible of eventlet's current use in OpenStack, to
ensure as pain-free a transition as possible).

d


Follow ups

References