Laravel обрабатывает параллельные запросы пользователя последовательно - PullRequest
0 голосов
/ 08 мая 2019

Laravel последовательно обрабатывает параллельные запросы пользователя.Как обрабатывать запросы одновременно?Кажется, что сессия (хранящаяся в хранилище Redis) блокирует параллельные запросы, но, возможно, это не причина.Где проблема?

Vue отправляет запросы ...

async manageData() {
   // array of chart's properties
   const charts = await axios.post('/report/chart_data', {id: this.id);
   // concurrent requests with variable 'charts'
   const result = await Promise.all(
      charts.map((chart, key) => axios.post('/report/data_range', {id: key}))
   );
}

.env settings

SESSION_DRIVER=redis
SESSION_LIFETIME=120

web.php

Route::post('report/data_range','AnalyticsApp\ReportController@ChartDataGet');

ReportController.php

public function ChartDataGet(Request $request)
    {
        return Chart::find($request->id)
    }

Время запроса

requests

1 Ответ

0 голосов
/ 08 мая 2019

Ваш первый аксиос вызова использует await , это означает, что вы ожидаете, пока он не завершится. Вы можете удалить это await , но кажется, что это необходимо для data_range . Если это не требуется, вы можете удалить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...