恢复误删的缓存状态变量并完成工具函数迁移

This commit is contained in:
2569718930@qq.com
2026-05-25 17:53:25 +08:00
parent 7d609e40f6
commit 715ffa4566
+20
View File
@@ -1,6 +1,7 @@
from __future__ import annotations
import time as _time
import threading as _threading
from concurrent.futures import ThreadPoolExecutor
from datetime import datetime, timezone, timedelta
from typing import Dict, Any, Optional
@@ -9,6 +10,7 @@ from fastapi import HTTPException
from loguru import logger
from web.core import (
LRUDict,
_cache,
_CACHE_LOCK,
CACHE_TTL,
@@ -83,6 +85,24 @@ HIGH_FREQ_AIRPORT_ANALYSIS_CITIES = {
"wuhan",
}
_ANALYSIS_CACHE_STATS_LOCK = _threading.Lock()
_ANALYSIS_CACHE_STATS: Dict[str, Any] = {
"total_requests": 0,
"cache_hits": 0,
"cache_misses": 0,
"force_refresh_requests": 0,
"last_cache_hit_at": None,
"last_cache_miss_at": None,
"last_city": None,
}
_SUMMARY_CACHE_LOCK = _threading.Lock()
_SUMMARY_CACHE = LRUDict(maxsize=128)
def _fetch_nmc_current_fallback(city: str, *, use_fahrenheit: bool) -> Dict[str, Any]:
return {}
def _record_analysis_cache_event(*, city: str, hit: bool, force_refresh: bool) -> None:
now = datetime.now(timezone.utc).isoformat()
with _ANALYSIS_CACHE_STATS_LOCK: