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

Как Apache обрабатывает несколько запросов одновременно?

Если 10 запросов попадают в Apache, обрабатывает ли он их один за другим, поэтому, когда R3 завершает работу, он начинает запускать R4, или запускает 10 процессов / потоков / чего-либо еще и разрешается одновременно?

Теперь немного предыстории: у меня есть PHP-скрипт, который выполняет некоторые процессы в течение двух минут. У меня вопрос: пока клиент ожидает эти 2 минуты, все остальные запросы клиентов обрабатываются? Или тоже ждете, пока это закончится?

Кстати, если есть одновременные запросы, как я могу их обработать? Скажем, поставим на них ограничение. Или ограничение на потребляемые ресурсы. Например, я хочу, чтобы сервер использовал 80% производительности при обслуживании веб-приложения и только 20% для этих длительных операций, потому что я не тороплюсь их завершать.

Не знаю, имеет ли это значение, но все на PHP.

Сервер обрабатывает запросы одновременно до предела, установленного вами в файле конфигурации. Взгляните на эти директивы:

MinSpareThreads
MaxSpareThreads
ThreadsPerChild
MaxClients
MaxRequestsPerChild