Files
lingniu-vehicle-ingest/vehicle-data-platform/docs/platform-performance-release-20260909.md

3.3 KiB
Raw Permalink Blame History

车辆平台性能修复验收(2026-09-09)

发布

  • 正式版本:platform-performance-202609091012,北京时间2026-09-09 10:11:48确认就绪。
  • 服务:lingniu-vehicle-platform;正式域名 https://vehicle.d.lnoneos.com/
  • 二进制SHA-2563c3358a438e421e89fbe2a39f6b74869ab170a4aee9c04b321e0bc9c9807afe5,候选与正式一致。
  • 保留上一版hydrogen-detail-20260904162007。原前端资源沿用,发布兼容资源检查通过;无数据库迁移、索引变更或权限调整。

原因与修复

  1. /api/v2/monitor/workspace每次地图刷新经由DashboardSummary执行完整运维概览,包括MySQL、TDengine、Redis及容量健康探测和其他用不到的统计。改为读取监控实际需要的当日活跃车数和原始帧数;车辆快照、地图、告警数及列表的原计算保留。监控不再依赖额外健康检查的耗时,但运维健康接口仍保留检查。
  2. /api/mileage/daily在分页之前关联全历史里程与绑定、能源表;计数也执行不影响行数的能源关联。生产EXPLAIN估算154万行,修复后未过滤精确总数为1,617,910。改为先按原条件筛选和分页,再补充能源/车牌字段;仅绑定条件确实参与筛选时保留计数中的绑定关联。
  3. 保留完整总数、授权VIN/有效日期限制、关键词、协议优先、去重、排序、分页及氢耗字段语义。不通过默认收窄日期或省略记录伪造提速。

测试与测量

  • API模块go test ./...go test -race ./internal/platformgo vet ./internal/platform、发布脚本自测及diff-check通过。
  • 在生产机器127.0.0.1:20301隔离候选进程读取真实库,与原20300接口比较四组封闭历史查询的完整data:单日、近一个月第二页、去重、JT808/GB32960协议优先。全部记录、数量、总数和字段逐项一致。
  • 同一监控参数:limit=10000&zoom=5&bounds=82.483090,16.144931,128.317906,51.735158&railLimit=200。原版本本机HTTP三轮631/569/581毫秒;候选102/97/98毫秒。
  • 正式HTTPS三轮监控126/135/137毫秒;2026-09-01单日里程POST为24/22/22毫秒;2026-08-11至2026-09-08里程POST为163/155/157毫秒(每页20条)。所有请求200。
  • 未筛选全历史GET:原版本正式接口5秒超时,直接查询超过8秒;正式新版本约1.18秒,完整总数1,617,910。它仍是秒级查询,不能将有日期窗口的验收数字用于全历史承诺。
  • 鉴权session接口本机3毫秒、HTTPS16毫秒;初步主机负载和内存未见资源耗尽。已复现的慢点位于车辆平台查询和监控运维探测路径。

范围与证据

用户提供了监控完整URL和里程接口地址,未提供里程POST Payload。因此上述里程测量明确标注了测试日期窗口,尚不能等同于用户原始筛选条件。浏览器只到达登录页,未取得用户会话做界面操作验收;正式接口验证使用运行环境已有管理员诊断凭证,未新建账户或扩大权限,凭证不进入输出。

代码专项测试覆盖分页先于能源补全、完整计数移除无关关联、必要绑定筛选和参数映射,以及监控只读必要计数、不触发完整健康检查。隔离候选验收结束后停止。脱敏测量、SQL执行计划、比较探针、部署与SHA记录保存在outputs/platform-perf-20260909/