Intereting Posts

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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