Thanks for the clarifications. Just for the record it seems that Supervisor will roll out Python 3 support soon https://github.com/Supervisor/supervisor/issues/110. It's good to have it here and now though.
That's great to see Supervisor is moving forward on the Python 3 support.
Scott is actually the person who ported Circus to Python 3, so double kudos for him.
When I last compared them, circus looked more specific to managing something like wsgi workers while supervisord looked a little more "general-purpose".
This was probably a wrong or overly simplified conclusion, but I know supervisor and it hasn't let me down yet - so for now I see no compelling reason to switch. Maybe it's one of those "you just have to try it" moments? :)
Supervisor is solid and mature, that's for sure. If not for the sockets feature, I would say that you would want to move to Circus if:
- you need python 3 - you have a complex start/stop sequence where you need to add some custom code - you manage many servers and want to quickly jump from one to another in the same web dashboard / CLI.
Otherwise, they both provide roughly the same things I'd say
Major differences:
* Circus uses ZeroMQ, Supervisor uses XML-RPC. * Circus is Python 3 compatible, Supervisor is Python 2 only * Circus will let you manage sockets - see http://circus.readthedocs.org/en/latest/for-ops/sockets/