[openstack-dev] Asynchrounous programming: replace eventlet with asyncio

Vishvananda Ishaya vishvananda at gmail.com
Fri Feb 7 21:17:59 UTC 2014


On Feb 7, 2014, at 10:25 AM, Yuriy Taraday <yorik.sar at gmail.com> wrote:

> Hello, Vish!
> 
> I hope you can provide some historical data.
> 
> On Fri, Feb 7, 2014 at 9:37 PM, Vishvananda Ishaya <vishvananda at gmail.com> wrote:
> To be clear, since many people weren’t around in ye olde days, nova started using tornado. We exchanged tornado for twisted, and finally moved to eventlet. People have suggested gevent and threads in the past, and now asyncio. There are advantages to all of these other solutions, but a change at this point is going to be a huge pain, even the abstracting one you mention above.
> 
> Can you remember what were pros and cons for threads in that time? Did anyone consider using external HTTP server as opposed to running one in process?

We didn’t get far with the thread discussion just because it was a large change. People have threatened to prototype picking one of the workers (say nova-compute) and try to convert it to threads, but I think it was just manpower limitations and trepidation around the amount of work needed based on experience around tornado/twisted
>  
> If we are going to invest the time in making another change, I think we need a REALLY good reason to do so. Some reasons that might be good enough to be worth considering:
> 
> a) the cost of porting the library to a maintained python version (3.X at some point) is greater than replacing it with something else
> 
> I think, eventlet hits this one. 

It may for sure. But the solution here could be to forward port eventlet or to port eventlet on top of the asyncio reactor.

>  
> b) the performance of the other option is an order of magnitude better. I’m really talking 10X here.
> 
> Will you consider other technological benefits? For example, as it happened with Keystone and Apache HTTPD (IPv6, HTTP/1.1, Kerberos).

Oh sure, I wasn’t saying that those are the ONLY good reasons, I was just saying that we need reasons that good.

Vish

> 
> -- 
> 
> Kind regards, Yuriy.
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20140207/f285a6b0/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 455 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20140207/f285a6b0/attachment-0001.pgp>


More information about the OpenStack-dev mailing list