Worker Process Manager

Currently the main way people pass traffic off to multi-process workers (Think Python gunicorn, Ruby unicorn/puma) is to use something like FPM or simple reverse proxying.

I’m thinking about having a plugin that works more like Phusion Passenger. But instead of depending on apache or nginx, we can use Caddy.

Some advantages:

  • Goroutines to handle each worker PID.
  • Expose metrics about each worker
  • Provide output buffering
  • Layer-7 balance requests, rather than connections.
  • Simplifies container deployments (Caddy is PID 1)

Anyone else thought about this? Think it’s a good/bad idea?

That’s probably fine, but it would definitely be for a plugin to implement. No plans to add something like that to the standard Caddy distribution.

FYI, if you weren’t aware of this plugin, it might be relevant to what you’re looking for?

1 Like

Yea, a plugin was what I was thinking about.

Thanks for the link to the supervisor plugin. I didn’t see it when I was searching around. I guess “supervisor” wasn’t in my search term list. :slight_smile:

1 Like

This topic was automatically closed after 30 days. New replies are no longer allowed.