6

I'm looking into changing our Django deployments and was reading the deploy page for and it talks about both which I was aware of and planning on using and that I don't recall hearing about before. Why would I pick one over the other?

We are running red hat.

sr_
  • 15,224
  • 49
  • 55
Kit Sunde
  • 4,394
  • 10
  • 30
  • 34

1 Answers1

2

Supervisord is not designed or intended to run as the init process, PID 1, while runit is. This means that in addition to service management, runit also has code for reaping the orphaned children of other processes, handling startup and shutdown, runlevels, and dependencies between services, while supervisord does not do these things, and is designed to operate with any init system. While it is possible to use runit without replacing your existing init system, that isn't really what it's designed for. I would expect a runit installation to be a deeper and more error-prone operation than a supervisord setup (which I have done, and which is pretty painless), but if you need the ability to delay the launch of processes until other processes have come up, then supervisord will not be adequate.

lorimer
  • 121
  • 3