Commit Graph

4 Commits

Author SHA1 Message Date
Windpicker-owo
ecef8edd28 feat(cache): 提升内存管理与监控能力
- 在CacheManager中添加健康监控系统,并提供详细的内存统计信息
- 使用新的memory_utils模块实现精确的内存估算
- 添加基于大小的缓存条目限制,以防止过大项目
- 通过去重内存计算优化缓存统计
- 在MultiLevelCache中添加过期条目的自动清理功能
- 增强批处理调度器缓存功能,支持LRU驱逐策略和内存追踪
- 更新配置以支持最大项目大小限制
- 添加全面的内存分析文档和工具

重大变更:CacheManager 的默认 TTL 参数现改为 None 而非 3600。数据库兼容层默认禁用缓存,以防止旧版代码过度使用缓存。
2025-11-19 23:31:55 +08:00
Windpicker-owo
29a5357728 feat(cache): 添加自定义TTL支持和内存限制配置 2025-11-19 23:31:55 +08:00
明天好像没什么
ff6dc542e1 rufffffff 2025-11-19 23:31:37 +08:00
Windpicker-owo
d850f231ab feat(database): 实现多级缓存管理器
- cache_manager.py: 完整的多级缓存系统
  * LRUCache: O(1)的LRU缓存实现
  * MultiLevelCache: L1+L2两级缓存架构
  * L1缓存: 1000项/60秒,用于热点数据
  * L2缓存: 10000项/300秒,用于温数据
  * 自动淘汰: LRU策略淘汰最少使用数据
  * 统计监控: 命中率、淘汰率等指标
  * 智能提升: L2命中自动提升到L1
  * 定期清理: 后台任务清理过期数据

- 功能特性:
  * 异步锁保证线程安全
  * 自动估算数据大小
  * 支持自定义loader函数
  * 全局单例模式

优化层第一部分完成,命中率预期>80%
2025-11-19 23:30:42 +08:00