feat(cache): 提升内存管理与监控能力

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

重大变更:CacheManager 的默认 TTL 参数现改为 None 而非 3600。数据库兼容层默认禁用缓存,以防止旧版代码过度使用缓存。
This commit is contained in:
Windpicker-owo
2025-11-03 15:18:00 +08:00
parent 99785d09ad
commit 4e2b598164
10 changed files with 1923 additions and 20 deletions

View File

@@ -1,5 +1,5 @@
[inner]
version = "7.5.5"
version = "7.5.6"
#----以下是给开发人员阅读的如果你只是部署了MoFox-Bot不需要阅读----
#如果你想要修改配置文件请递增version的值
@@ -50,7 +50,8 @@ cache_l1_ttl = 60 # L1缓存生存时间
cache_l2_max_size = 10000 # L2缓存最大条目数温数据内存占用约10-50MB
cache_l2_ttl = 300 # L2缓存生存时间
cache_cleanup_interval = 60 # 缓存清理任务执行间隔(秒)
cache_max_memory_mb = 100 # 缓存最大内存占用MB超过此值将触发强制清理
cache_max_memory_mb = 500 # 缓存最大内存占用MB超过此值将触发强制清理
cache_max_item_size_mb = 5 # 单个缓存条目最大大小MB超过此值将不缓存
[permission] # 权限系统配置
# Master用户配置拥有最高权限无视所有权限节点