2013-09-04 5 views
-1

У меня есть вопрос, на мой взгляд, что если ответ может решить мою проблему. Как сервер обрабатывает несколько запросов пользователя для PHP-скриптов?Как сервер обрабатывает несколько пользователей

Например, если пользователь открывает страницу, которая обращается к скрипту PHP с использованием ajax-запроса, и, например, что PHP-скрипт имеет длительный процесс (на самом деле очень длинный), а другой пользователь открывает одну и ту же страницу на других машинах и другой все больше и больше пользователей.

Должен ли быть завершен процесс на PHP перед тем, как второй пользователь, который имеет доступ к скрипту, может быть обработан или будет обрабатываться параллельно сервером?

ответ

3

Веб-сервер, скажем, Apache, запустит новый независимый процесс PHP для каждого запроса. Могут быть несколько экземпляров PHP, выполняющих один и тот же скрипт независимо друг от друга, выполняющихся одновременно. Они не ждут друг друга * и не мешают друг другу **.

* Если они пытаются одновременно использовать совместно используемые блокированные ресурсы, им, возможно, придется подождать друг друга. Скажем, файлы или сеансы.
** Если, конечно, они не изменяют какой-либо внешний ресурс (скажем, файлы или записи базы данных) таким образом, чтобы они мешали.

Смежные вопросы