mirror of
https://github.com/fish2018/pansou.git
synced 2025-11-25 03:14:59 +08:00
优化排序和缓存更新策略
This commit is contained in:
10
README.md
10
README.md
@@ -12,17 +12,23 @@ PanSou是一个高性能的网盘资源搜索API服务,支持TG搜索和自定
|
||||
- ✅ **高可用性**: 长时间运行无故障
|
||||
|
||||
|
||||
## 特性([详情见系统开发设计文档](docs/PanSou%E7%B3%BB%E7%BB%9F%E5%BC%80%E5%8F%91%E8%AE%BE%E8%AE%A1%E6%96%87%E6%A1%A3.md))
|
||||
## 特性([详情见系统开发设计文档](docs/%E7%B3%BB%E7%BB%9F%E5%BC%80%E5%8F%91%E8%AE%BE%E8%AE%A1%E6%96%87%E6%A1%A3.md))
|
||||
|
||||
- **高性能搜索**:并发搜索多个Telegram频道,显著提升搜索速度;工作池设计,高效管理并发任务
|
||||
- **网盘类型分类**:自动识别多种网盘链接,按类型归类展示
|
||||
- **智能排序**:基于时间和关键词权重的多级排序策略
|
||||
- **智能排序**:基于插件等级、时间新鲜度和优先关键词的多维度综合排序算法
|
||||
- **插件等级权重**:等级1插件(1000分) > 等级2插件(500分) > 等级3插件(0分)
|
||||
- **优先关键词加分**:包含"合集"(420分)、"系列"(350分)等优先关键词的资源显著提升排序
|
||||
- **时间新鲜度权重**:1天内(500分) > 3天内(400分) > 1周内(300分) > 1月内(200分)
|
||||
- **综合得分排序**:总得分 = 插件得分 + 关键词得分 + 时间得分
|
||||
- **异步插件系统**:支持通过插件扩展搜索来源,已内置多个网盘搜索插件,详情参考[插件开发指南.md](docs/插件开发指南.md);支持"尽快响应,持续处理"的异步搜索模式,解决了某些搜索源响应时间长的问题
|
||||
- **双级超时控制**:短超时(4秒)确保快速响应,长超时(30秒)允许完整处理
|
||||
- **持久化缓存**:缓存自动保存到磁盘,系统重启后自动恢复
|
||||
- **优雅关闭**:在程序退出前保存缓存,确保数据不丢失
|
||||
- **增量更新**:智能合并新旧结果,保留有价值的数据
|
||||
- **主动更新**:异步插件在缓存异步更新后会主动更新主缓存(内存+磁盘),使用户在不强制刷新的情况下也能获取最新数据
|
||||
- **缓存优化**:智能跳过空结果和重复数据的缓存更新,显著减少无效操作,提升系统性能
|
||||
- **插件管理**:启动时按优先级排序显示已加载插件,便于监控和调试
|
||||
- **插件扩展参数**:通过ext参数向插件传递自定义搜索参数,如英文标题、全量搜索标志等,提高搜索灵活性和精确度
|
||||
- **二级缓存**:分片内存+分片磁盘缓存机制,大幅提升重复查询速度和并发性能
|
||||
- **分片内存缓存**:基于CPU核心数动态分片的内存缓存,每个分片独立锁机制,支持高并发访问;使用原子操作优化热点数据更新,显著减少锁竞争
|
||||
|
||||
Reference in New Issue
Block a user