Подтвердить что ты не робот

Как веб-сервер обрабатывает запросы?

Я использую php и laravel в качестве своего веб-сервиса.

Я хочу знать, хранит ли laravel и обрабатывает запросы в этой ситуации?

  • запрашивает разные контроллеры у многих пользователей;
  • запрашивает один и тот же контроллер у одного и того же пользователя.

Является ли laravel хранить эти запросы в очереди по последовательности достигнутых запросов?

Является ли laravel параллельными запросами процесса для разных пользователей и последовательно для одного и того же пользователя?

Например, есть два запроса от пользователя. Два запроса направляют два метода в один и тот же контроллер. Хотя первый запрос будет стоить долгое время для обработки на стороне сервера, второй будет стоить очень мало времени. Когда пользователь настраивает первый запрос, второй, хотя второй стоит очень мало времени, серверная сторона не будет обрабатывать второй запрос, пока не завершит обработку первого.

Итак, я хочу знать, как laravel хранит и обрабатывает запросы?

4b9b3361

Ответ 1

Laravel не обрабатывает запросы напрямую, это что-то управляет вашим веб-сервером и PHP. Laravel получает запрос, уже обработанный вашим веб-сервером, потому что это всего лишь инструмент, написанный на PHP, который обрабатывает данные, связанные с вызовом запроса. Итак, пока ваш веб-сервер знает, как выполнять PHP и вызывает правильный файл index.php, Laravel будет загружаться и обрабатывать данные запроса, которые он получает с веб-сервера.

Итак, если ваш веб-сервер может принимать 2 разных вызова (как правило, они делают это в сотнях), он попытается создать два PHP-процесса (sub), и вы должны иметь 2 экземпляра Laravel в памяти, которые работают параллельно.

Итак, если у вас есть код, который зависит от кода пыльника, который может занять слишком много времени, в зависимости от многих других факторов, вам придется иметь дело с этим самостоятельно, в своем приложении Laravel.

Как правило, мы просто добавляем данные в базу данных, а затем возвращаем результат из расчета, выполненного с данными уже в хранилище данных. Поэтому не имеет значения, порядок, который данные получают в хранилище данных, которое было получено первым, конечный результат всегда один и тот же. Если вы не можете полагаться на эту методологию, вам придется подготовить свое приложение, чтобы справиться с этим.

введите описание изображения здесь

Ответ 2

Все в PHP начинается как отдельный процесс. Эти процессы независимы друг от друга, пока в Picture не появится какой-либо общий ресурс.

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

Несколько пользователей могут вызывать любое количество процессов одновременно в зависимости от ваших системных возможностей.