Что касается Gunicorn, я знаю, что существуют различные рабочие классы, но для этого разговора я просто смотрю на типы sync и async.
Из моего понимания ...
sync
workers = (2 * cpu) + 1
worker_class = sync
async (gevent)
workers = 1
worker_class = gevent
worker_connections = a value (lets say 2000)
Таким образом (на основе четырехъядерной системы) с использованием рабочих по синхронизации я могу параллельно обрабатывать до 9 соединений. С Async у меня может быть до 2000, с оговорками, которые идут с асинхронностью.
Вопросы