mirror of
https://ghfast.top/https://github.com/aeroxw/tick-stock-panel.git
synced 2026-09-12 17:54:15 +08:00
perf: 指标计算移出启动关键路径, 后台异步预热 (#51)
启动时 instruments/index/ETF 同步刷新(<0.1s), enriched 的 compute_indicators (107万行, 低配Linux 50s+) 推 daemon 线程异步完成。应用秒级 ready, 前端不再 报 ECONNREFUSED。预热期间上层走空表降级, 完成后自动替换缓存。 - repository: _enriched_warming 标志 + warmup 线程 + 懒加载守卫 - main: refresh_cache(background=True) + app.state.indicators_ready - data API: status 端点加 indicators_ready 字段 - 前端: Data 页指标计算中提示 + 加快轮询 Closes #47 Co-authored-by: shy3130 <shy3130@users.noreply.github.com>
This commit is contained in:
@@ -613,6 +613,8 @@ def status(request: Request) -> dict:
|
||||
"last_instruments_run": _last_finished("instruments"),
|
||||
"last_pipeline_run": _last_finished("pipeline"),
|
||||
"checked_at": datetime.now(timezone.utc).isoformat(timespec="seconds").replace("+00:00", "Z"),
|
||||
# 指标缓存就绪标志 (启动时 enriched 异步预热, 完成前为 false)
|
||||
"indicators_ready": getattr(request.app.state, "indicators_ready", True),
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user