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)
}
请求的时间
答案 0 :(得分:0)
您的第一个呼叫axios使用 await ,这表明您等待它完成。您可以删除此 await ,但是看来 data_range 很有必要。如果不需要,可以删除。