Commit Graph

1 Commits

Author SHA1 Message Date
zlt 47369d3e58 选股计划缓存:存活时间盖住整个交易日,同键只算一次(09-10 页面超时修复)
09-10 开盘前页面报「上游的选股计划读不到 · timeout of 60000ms exceeded」。根因两半:

一、缓存只活 10 分钟。PMS 在 08:40 预热了一次(那次花 39 秒),08:50 就过期;用户
    09:02 打开页面正好撞上冷启动。改成 12 小时——缓存键里带的是真实数据日,上游换日
    后旧那份立刻失效,本来就不靠时间保新鲜;12 小时是为了让 08:40 那次预热管到收盘。

二、装配在锁外面,几路并发各跑一遍。页面一次加载拉多路,全部判未命中、各自跑一趟
    三十多秒的装配、还互相抢同一批库连接,实际耗时远超单跑一次——这才是破 60 秒的
    那一半。改成同键单飞:第一个去算,后到的等它算完直接吃缓存;不同参数组合互不阻塞。

新增 test_plan_cache.py 钉住四件事:换日立刻失效、同键只算一次、不同参数不互相阻塞、
存活时间盖得住交易日。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-10 09:09:40 +08:00