On 09/21/2016 11:41 AM, Joshua Harlow wrote:
I've seen something similar at https://review.openstack.org/#/c/316935/
Maybe its time we asked again why are we still using eventlet and do we
need to anymore. What functionality of it are people actually taking
advantage of? If it's supporting libraries like oslo.service then it'd
probably be useful to talk to the ceilometer folks who replaced
oslo.service with something else (another oslo library for periodics and
https://github.com/sileht/cotyledon for service oriented tasks).
Plus Keystone has gotten off of it.
I actually like eventlet and gevent quite a lot. I am using it in a
new middleware component that will be involved with database connection
pooling. However, I *don't* use the global monkeypatching aspect.
That's where this all goes very wrong. Things that are designed for
synchronous operations, like database-oriented business methods as well
as the work of the database driver itself, should run within threads.
You can in fact use eventlet/gevent's APIs explicitly and you can even
combine it with traditional threading explicitly. I'm actually using a
stdlib Queue (carefully) to send data between greenlets and threads.
Madness!
-Josh
__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev