Я пытаюсь понять, как правильно настроить nginx и tomcat для совместной работы.
Nginx имеет worker connections
настройка и кот имеет max threads
(при условии наличия родного коннектора APR для tomcat). Поскольку nginx подключается к бэкэнду с HTTP / 1.0, поддержка активности для tomcat не требуется.
Я установил keep-alive timeout
до 30 секунд в nginx. Если 100 запросов / с является целью и каждый запрос завершается за 1 с, может быть 100 запросов * 30 секунд каждое = 3000 одновременных подключений, которые могут быть открыты для nginx, и будет 100 одновременных подключений к tomcat.
Итак, если я установил worker connections
до 6000 в nginx (рабочий процесс равен 1, а nginx потребляет 2 соединения на запрос, я думаю. Одно для клиента и одно для бэкэнда) и max threads
до 100 в tomcat (по умолчанию уже 200), это будет работать.
Есть ли какие-то концептуальные проблемы в этом расчете? Точные цифры значения не имеют.
Спасибо.
При выполнении приведенных выше расчетов следует учитывать два момента:
В остальном это выглядит неплохо.