Dify 社区针对运行日志存储的性能瓶颈进行了多项积极探索:
- 内存数据库(issue #20147):适用于无需持久化的轻量场景,同时新版执行引擎完成了日志存储抽象,为后续异构存储改造奠定了基础。
- 后台异步执行(issue #20050):通过 Celery Worker 异步写入日志,有效降低了核心链路的延迟,减轻了 API 引擎对 DB 的同步依赖。
- 周期性清理(issue #23399):引入自动清理机制,定期移除陈旧的会话与执行记录,缓解数据库存储膨胀问题。
- 大字段分离存储:针对 LLM 长上下文导致的大字段问题,支持将超长字段截断并转存至对象存储,减轻 DB 的 I/O 压力。
- Repository 抽象层(v1.4.1+):引入 WorkflowExecution 领域模型和标准 Repository 接口,v1.8.0 进一步引入异步实现,为多存储驱动提供了架构基础。
这些优化在特定阶段非常有效,但在大规模生产场景下应用层优化已触及天花板,需要从根本上解决数据特征与存储引擎的错配问题。