Postgres 的机器人状态存储插件,推荐个还蛮实用的——botbuilder-storage-postgres。它专门为微软 BotBuilder 框架量身打造,用来把机器人的会话状态啥的存到 Postgres 里。

优点挺的,支持NoSQL 风格的存储,也就是说你不用纠结表结构,想扩展啥字段都不怕,灵活性高。而且 Postgres 本身稳定性就不错,配上这个库,部署多实例机器人也不虚,宕机了状态也能跟得上。

用法也不复杂,装一下:npm install botbuilder-storage-postgres,这样搞:

const postgresStorage = new PostgresStorage({
  uri: process.env.POSTGRES_URI
});
const conversationState = new ConversationState(postgresStorage);

注意你得在.env里配好POSTGRES_URI,格式差不多是:postgresql://user:password@host:port/dbname,这个和 LibPQ 标准一样,能用密钥存储更安全。

嗯,适合那种要多人并发、状态同步需求比较强的场景,尤其是你用 BotFramework 做客服机器人的话,用这个就比较放心。如果你还在用内存存状态,建议可以换一下,稳定性会提升不少。