php - 如何优化 laravel 代码以加快 TTFB?
问题描述
我正在尝试优化以下代码以加快实际为 11 秒(太高)的 ttfb 时间。json 包含数千个地理坐标,用于在 Google 地图上打印折线。代码有问题还是我需要增加服务器资源?谢谢
public function getTrackingData($scheduleId)
{
$segmenti = DB::select(DB::raw("SELECT a.segmentid,b.colore FROM schedules_trackings a left join devices b on a.device_id=b.id where schedule_id = :scheduleId group by a.segmentid,b.colore,b.sigla"), array(
'scheduleId' => $scheduleId,
));
$resultArray = json_decode(json_encode($segmenti), true);
$tracking = array();
foreach ($resultArray as $seg) {
$geodata = DB::select(DB::raw("SELECT a.latitude, a.longitude FROM schedules_trackings a left join devices b on a.device_id=b.id where schedule_id = :scheduleId and segmentId = :segmentId order by a.created_at"), array(
'scheduleId' => $scheduleId,
'segmentId' => $seg['segmentid']
));
$tracking[] = array(
'segment' => $seg['segmentid'],
'color' => $seg['colore'],
'geodata' => $geodata
);
}
return response()->json($tracking, 200);
}
解决方案
推荐阅读
- javascript - DatePicker 适用于 2020 年和 2019 年,但明年 2021 年的可用日期不可用
- excel - Application.OnTime 权限(数据不断更新时不运行)
- java - 在 OpenCV 4.5.0 Java 中,什么方法返回轮廓中的点数?
- java - 如何延迟调用 api 直到响应正常
- methods - 编译方法吱吱
- kubernetes - 应用程序在其自己的命名空间中,并且在任何命名空间中都有可用的服务帐户
- spring-boot - 在流处理器消费者中模拟 SchemaRegistryClient
- python - 如何序列化包含 proto 对象的 python 对象?
- javascript - 导入组件时反应无法解析模块
- javascript - npm 全局安装包和自动化和递归构建过程