Время отклика Apache httpd увеличивается при одновременных подключениях

Я знаю, что было задано много вопросов на эту тему, но я не нашел ответа, чтобы помочь мне.

Я пытаюсь, чтобы Apache httpd отвечал на 200 одновременных соединений. Я тестирую с помощью jMeter, выбираю небольшой статический текстовый файл (около 100 байт), используя prefork; MaxClient & ServerLimit на 500, ни память, ни процессор не ограничены (оба меньше 50%), пропускная способность составляет 1 Гбит / с.

  • если я запускаю только одно соединение, время отклика составляет около 7 мс
  • если я запускаю несколько одновременных подключений (скажем, 2 или 3), время отклика достигает 70 мс
  • если я начну немного больше (скажем, 20), время отклика превышает 2 с даже для первого соединения

Использование keep-alive мало что меняет. Перезапуск httpd тоже не помогает.

Я делаю что-то неправильно? как я могу это исправить?

заранее спасибо

Greg

1 ответ

Решение

Чтобы решить проблему, мне пришлось постоянно увеличивать количество запущенных процессов. Вместо:

StartServers          5
MinSpareServers       5
MaxSpareServers      10

Я изменился на:

StartServers        300
MinSpareServers     300
MaxSpareServers     300

Теперь время ответа приемлемо. Кажется, процесс создания / убийства очень тяжел даже для быстрых компьютеров...

Другие вопросы по тегам