Назад | Перейти на главную страницу

совместная настройка nginx и tomcat

Я пытаюсь понять, как правильно настроить 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), это будет работать.

Есть ли какие-то концептуальные проблемы в этом расчете? Точные цифры значения не имеют.

Спасибо.

При выполнении приведенных выше расчетов следует учитывать два момента:

  • Есть разница между подключением и потоком. это страница немного ломает это, но каждый запрос - это поток. На одно соединение будет много запросов.
  • RAM - еще один фактор мониторинга. Сколько памяти занимает каждый поток и сколько у вас на машине, может быть ограничивающими факторами.

В остальном это выглядит неплохо.