Concurrent programming in Python is very colorful (and confusing too). There's just too many options with each having it's pros and cons...
- Thread based (
threadingmodule) - Process based (
multiprocessingmodule) - Co-routines (
greenlet,gevent,eventlet) - Async (
Twisted,Tornado) - Inter-process communication (
subprocessmodule) - Message queue based (
ØMQ,PyCom,mpi4py) - Others (
Pyro,execnet,Parallel Python)
I know some of these and can write programs using them. But, I just don't feel I know them pretty well -- I can't decide what to use when. I don't know how to put these into perspective.
So, my simple question is -- what are some open source projects that employ these techniques so that I can see them in action in real program.
