Laravel顺序处理用户的并发请求

时间:2019-05-08 12:51:33

标签: laravel session redis

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设置

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 :(得分:0)

您的第一个呼叫axios使用 await ,这表明您等待它完成。您可以删除此 await ,但是看来 data_range 很有必要。如果不需要,可以删除。