yml2213
253dc2061e
perf(hall): 接单排行榜加 30s 短缓存,消除每次刷新的全表聚合
排行榜每次都要对全量 work_orders + work_order_shares 做跨源去重聚合
(生产实测 742ms / 35,483 块 ≈ 277MB),而结果只在工单验收完成时才变化。
大厅每次刷新/窗口聚焦都会触发前端重新拉取,不缓存时该查询独占全库约 8% 的缓冲读。
- TTL 取 30s:名次变化以分钟计,30s 足够新鲜;按观测到的调用量,命中率接近 100%。
- 缓存键必须带 workerId:SQL 是 WHERE rank <= 10 OR worker_id = $2,
结果包含"当前打手自己的名次",键漏了 workerId 会把 A 的名次错发给 B
(正确性问题),守卫测试专门锁定这一点。
2026-10-03 15:22:46 +08:00
..
2026-09-15 11:28:40 +08:00
2026-08-22 14:39:46 +08:00
2026-09-12 16:44:59 +08:00
2026-08-28 21:36:54 +08:00
2026-09-15 20:03:11 +08:00
2026-08-21 17:31:39 +08:00
2026-08-23 16:04:10 +08:00
2026-08-21 17:32:58 +08:00
2026-09-15 20:03:11 +08:00
2026-09-01 14:13:10 +08:00
2026-08-21 17:17:06 +08:00
2026-10-01 15:05:38 +08:00
2026-08-21 17:17:06 +08:00
2026-08-21 17:12:46 +08:00
2026-08-23 18:19:47 +08:00
2026-09-13 14:25:51 +08:00
2026-09-12 16:01:26 +08:00
2026-09-21 14:23:00 +08:00
2026-08-28 22:22:26 +08:00
2026-08-21 17:06:25 +08:00
2026-09-02 14:32:26 +08:00
2026-08-22 09:48:09 +08:00
2026-10-01 15:36:46 +08:00
2026-10-02 17:05:25 +08:00
2026-10-02 17:05:25 +08:00
2026-09-13 20:44:35 +08:00
2026-09-18 19:36:17 +08:00
2026-09-21 11:35:38 +08:00
2026-09-17 11:52:40 +08:00
2026-09-19 10:41:15 +08:00
2026-10-01 12:17:00 +08:00
2026-09-17 12:20:23 +08:00
2026-10-01 11:07:28 +08:00
2026-10-01 11:07:28 +08:00
2026-09-17 13:34:39 +08:00
2026-09-17 10:21:38 +08:00
2026-10-01 11:07:28 +08:00
2026-10-01 11:07:28 +08:00
2026-10-02 17:05:25 +08:00
2026-09-15 11:28:40 +08:00
2026-08-21 14:02:30 +08:00
2026-08-16 16:59:02 +08:00
2026-08-18 10:06:01 +08:00
2026-09-12 15:42:43 +08:00
2026-09-15 13:48:30 +08:00
2026-09-21 11:35:38 +08:00
2026-08-21 18:21:04 +08:00
2026-09-17 21:03:20 +08:00
2026-08-21 16:28:16 +08:00
2026-08-21 16:28:16 +08:00
2026-08-21 16:30:55 +08:00
2026-09-15 11:35:24 +08:00
2026-09-17 11:57:33 +08:00
2026-08-20 20:04:43 +08:00
2026-08-30 21:58:13 +08:00
2026-08-30 21:58:13 +08:00
2026-08-21 15:28:20 +08:00
2026-08-21 16:54:07 +08:00
2026-08-21 16:37:16 +08:00
2026-09-21 14:23:00 +08:00
2026-09-21 13:30:33 +08:00
2026-09-13 11:32:42 +08:00
2026-08-22 11:19:49 +08:00
2026-08-28 21:36:54 +08:00
2026-09-12 20:16:27 +08:00
2026-09-12 20:16:27 +08:00
2026-10-03 15:22:46 +08:00
2026-09-21 11:35:38 +08:00
2026-08-30 16:40:09 +08:00
2026-08-30 16:40:09 +08:00
2026-08-30 21:58:13 +08:00
2026-10-01 13:12:42 +08:00
2026-08-21 15:28:20 +08:00
2026-08-21 16:52:32 +08:00
2026-08-21 16:52:32 +08:00
2026-08-30 13:59:01 +08:00
2026-08-21 16:30:55 +08:00
2026-09-20 21:59:29 +08:00
2026-08-20 19:56:10 +08:00
2026-10-03 15:22:46 +08:00
2026-09-12 17:46:47 +08:00
2026-08-21 19:09:23 +08:00
2026-08-21 16:42:04 +08:00
2026-08-22 10:20:10 +08:00
2026-10-02 17:05:25 +08:00
2026-09-13 11:02:10 +08:00
2026-10-02 16:30:53 +08:00
2026-08-21 15:28:20 +08:00
2026-08-21 16:37:16 +08:00
2026-08-21 16:39:57 +08:00
2026-08-21 19:09:23 +08:00