问题域/PD-343

搜索结果缓存

Search Result Caching

缓存搜索和网页抓取结果,避免重复API调用降低成本

子问题

1.如何设计并发安全的缓存存储

2.如何处理缓存失效和更新

3.如何在多进程间共享缓存

4.如何在不修改搜索函数签名的前提下透明添加缓存

5.如何处理进程异常退出时的缓存数据丢失

各项目的解法1 solutions

Signals

横向对比

维度DeepResearch
缓存策略JSONL 文件级 KV 缓存,内存 dict + atexit 延迟回写
并发模型fcntl 读写锁分离(LOCK_SH 共享读 + LOCK_EX 排他写)
缓存粒度查询字符串/URL 精确匹配,无语义去重
失效机制无 TTL,全量重写覆盖,手动 update_cache 合并
集成方式装饰器模式 + 环境变量开关,零侵入搜索函数

最佳实践

1.使用文件锁保证JSONL缓存的并发读写安全

2.用装饰器模式 + 环境变量开关实现零侵入缓存集成

3.atexit 注册回调确保进程退出时缓存持久化