I'm configuring gunicorn (monitored by supervisord and behind an nginx frontend) and got a bit confused about the optimal number of processes to setup.
In the documentation it is clearly explained that:
workers = multiprocessing.cpu_count() * 2 + 1
My machine is a quad core so that should count for 9 workers.
But I want to run several applications, each one listening to a different port.
Should the count then be (truncated):
workers_per_application = int(workers / NUM_APPLICATIONS)
Or should each have the above number of workers?
I think this question actually applies not only to gunicorn but to every similar kind of listening server...