持久层(持久化) 产品与架构

别名: 持久化

把会话状态变成进程外、可重放、可隔离的数据:每次对话变成一条条事件存进 SQLite,让 Agent 学会「忘不掉」。没有持久层 = 断线即失忆、无法回放、无法多会话——状态在内存里,进程死,状态死,见[第 10 章](/chapters/10-persistence/)。

它是什么

持久层(持久化)把会话状态变成进程外、可重放、可隔离的数据:每次对话变成一条条事件存进 SQLite(Node ≥ 22.5 内置的 node:sqlite,零依赖),让 Agent 学会「忘不掉」。没有持久层 = 断线即失忆、无法回放、无法多会话——状态在内存里,进程死,状态死。

三个场景的根因

客服 Agent 的三种事故指向同一个根因:进程崩溃后消息数组从头开始(用户刚说的「帮我查订单」没了);断线重连带不来任何上下文;多会话的消息堆在同一个内存数组里互相污染。解法一句话:把会话状态变成进程外、可重放、可隔离的数据

选型与落地

存储模型选事件溯源(存过程而非现状):审计与调试需要行为链、追加式天然崩溃安全、还是断线恢复(第 16 章「事件序号 + 重连续传」)的前置。落地是四张表(sessions / events / messages / tool_calls)+ 一条写纪律「先落库、再回复」,详见第 10 章

与上下文工程的关系

第 09 章说「上下文管理是整理桌面,不是碎纸」——完整历史始终在存储层等着,这句话的承诺就在这里兑现;后续的长期记忆与检索(第 11 章)也以会话事件存储为底层。

相关词条

出现在这些章节