96SEO 2026-06-21 13:40 1
说实话,短期记忆用Redis确实挺合适的,你懂的。
为啥这么说呢,咱就是说Redis它有几个特点非常适合干这个事儿。

低延迟读写,这是Redis的一大优势,读写速度贼快。
TTL 自动过期,你Ke以设置过期时间,到点它自动就没了多爽。
多实例共享,这点特别重要,你的服务一旦扩成多实例,用户下次请求打到另一台机器上也不怕,因为RedisNeng让它们共享同一份会话上下文。
灵活数据结构,Redis提供了多种数据结构,你Ke以根据不同的场景选择Zui合适的那一种。
短期记忆和长期记忆的分工在讲怎么用Redis之前,先简单聊聊短期记忆和长期记忆的分工。
短期记忆主要存Zui近几轮对话、临时状态之类的东西,这些数据访问频率高,但不需要永久保存。
而长期记忆,比如完整的聊天记录、用户画像这些,就应该存到像PostgreSQL这样的数据库里。
Ke以这么理解:Redis是Agent身边的“工作台”,用来处理当前会话;PostgreSQL则是后面的“档案室”,用来永久保存数据。
为什么百度不收录我的文章?这个问题其实挺常见的,有人说是内容不够原创,有人说是网站权重太低...
说实话,这些因素dou可Neng影响收录情况,但咱也不用太纠结,Zuo好自己的就行了你懂的。
Redis在短期记忆中的具体应用先kan个具体的例子:用Redis存储Zui近几轮对话历史。
rpush user:history:sessionid "消息1" "消息2"ltrim user:history:sessionid 0 9
这样,你就Neng始终保持Zui近10条消息,多余的自动被截掉。
String 字符串
String是Zui常用的类型之一,你Ke以用它存对话摘要、临时状态、序列化后的消息数组。
setex agent:memory:user:session_id "{\"messages\": , \"summary\": \"...\"}"
List 列表
List特别适合Zuo消息队列、会话历史这种按顺序组织的数据。
lpush user:history:sessionid "新消息"ltrim user:history:sessionid 0 19
Hash 哈希
Hash适合存结构化会话元信息,比如model, locale, user_id, summary_version, tool_state.
hset agent:session:user:sessionid "model" "qwen-plus" "summaryversion" 1hgetall agent:session:user:session_id
import Redis from "ioredis";
import { ChatOpenAI } from "@langchain/openai";
const redis = new Redis; const store = new RedisMessageStore;
const model = new ChatOpenAI; const agent = createAgent;
async function invokeWithMemory { const history = await store.loadMessages; const result = await agent.invoke] }); await store.saveMessages; return result; }
踩坑经验:别把所有内容dou塞进一个超大的JSON String,后期会造成单key过大、局部geng新困难等问题;也别过度碎片化,把每个字段dou拆成单独key,会让调试和维护变麻烦。 一下redis 在业务中的应用非常广泛,Ke以帮助业务系统提高性Neng、安全性、稳定性和可 性等方面的需求,同时还Neng支持各种计数器、分布式锁、消息队列等功Neng,是一个非常合适 在业务中使用的数据库。 高性Neng : redis 是一个基于内存的数据库,因此它的读写速度非常快,Neng够在毫秒级别处理大量的请求。这使得redis 成为缓存数据的理想选择,Ke以显著提高应用程序的性Neng和响应速度。 简单易用 : redis 的API非常简单,易于使用,开发人员Ke以快速地实现各种功Neng,例如缓存,计数器,发布/订阅等等。此外 , redis 还提供了一些高级功Neng,如事务支持和 Lua 脚本,使得开发geng加灵活。 综上所述 , Redis 在业务中的应用非常广泛,Ke以帮助业务系统提高性Neng、安全性、稳定性和可 性等方面的需求,同时还Neng支持各种计数器、分布式锁、消息队列等功Neng,是一款非常 合适 在业务中使用的数据库。 64 : 一 、 短期 记忆 与长期 记忆 : Redis + MySQL 分层架构 .6 : # redis 10 : # 数据库 7 : # 缓存 6 : # mysql 155 : 虾料 AI Agent 专栏收录该内容 15 :4 篇文章 .( 以下单线程仅指 ( 以下单线程仅指 ( 以下单线程仅指 (R edis )负责存取这块的线程只有一个 , 而非 (R edis ) 中只有一个进程 ) 我先给个我的结论 , 单线程的 edis ) 在瓶颈是 cpu 的 io 时 , 确实速度会比多线程慢。但是,我们实际应用场景中hen少会遇到瓶颈是CPU的io的情况,这时候单线程优势就凸显出来了。实现hen简单 ! 性Neng又不会比多线程差,并且... 图 :低延迟 、 TTL 、多实例共享和摘要压缩,是 Redis Neng胜任短期记忆层的四个关键原因。图 :一次对话请求并不是单纯调用模型,而是一个带状态读写 、摘要压缩和 TTL 刷新的完整流程。
对 Agent 而言 , ZSet 特别适合Zuo 优先级任务队列 、Zui近活跃会话Ke以排序 、召回结果打分缓存.Ru果你希望某些任务 “ 按权重执行 ” , ZSet 会比 List geng灵活。
图 :在线对话优先依赖 Redis 承载短期记忆,而永久消息 、历史检索与长期记忆则交给 PostgreSQL 。
一次标准的短期 short-term memory short-term memory 流程,大致是这样: Ru果把这张表进一步翻译成 Agent 场景,其实就是一句话: 短期 memory 主用 String / Hash / List ,状态控制和周边Neng力按需补 Set / ZSet / Bitmap / Geo 。& nbsp;
hen容易踩坑的地方:TTL 过短,用户切回页面时 short-term memory short-term memoryYi经没了;TTL 过长,会堆积大量闲置会话,占用内存。它是什么: LangChain 提供的摘要中间件,用来在消息超阈值后压缩旧历史。
它控制什么行为: 它避免上下文窗口无限膨胀,降低 Token 消耗,同时尽量保留关键信息。
推荐使用场景: 一旦你的 Agent 是多轮对话,就应尽早考虑摘要压缩,否则上下文成本会迅速失控。
容易踩坑的地方: 不要因为 Redis 数据结构丰富,就把每个字段dou拆成单独 key。过度碎片化会让调试和维护dou变得hen累。
图 :从通用缓存到会话 short-term memory , Redis 的 种核心数据类型各自覆盖了不同的数据组织方式。
OPENAI_BASE_URL =https :// dashscope.aliyuncs.com/compatible-mode/v1
OPENAI_API_KEY =sk-xxxx
MODEL_NAME =qwen-plus
REDIS_HOST =localhost
REDIS_PORT =
REDIS_DB =
MEMORY_TTL_SECONDS =
MEMORY_KEY_PREFIX =agent : short_memory
MEMORY_SESSION_ID =demo_user_001 & nbsp;& nbsp;
这里Zui关键的几个参数是:
REDISHOST , REDISPORT , REDIS DB :连接 Redis 的基本配置 ; MEMORYTTLSECONDS :会话过期时间; MEMORYKEY_PREFIX :Redis key 前缀,避免和其他业务 key 冲突。 下期Ru果继续往下讲,就hen适合接着深入这几个方向:
如何优化摘要中间件,让压缩效果geng符合业务需求?
如何在多实例环境下保证会话一致性?
如何监控 Redis 的性Neng,并及时发现潜在问题?
进一步kan真实项目 , Redis 这层通常不会独立存在而是和长期存储协同 :图 : Redis + PostgreSQL 分层存储架构,既保证了短期数据的快速访问,又满足了长期数据的持久化需求。 在这个模型里 , Redis 主要解决的是 “ 当前会话如何持续运行 ” 的问题,而 “ 所有聊天记录如何永久保存 ” 则交给 PostgreSQL 。这个边界一定要清楚。
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback