osFoundry / Platform
应用级 KV 存储
兼容 Redis 的 KV,支持 TTL。会话、缓存、计数器——按您的应用规模供给。
简介
按应用 KV 存储为你在 osFoundry 中构建的每个应用提供各自独立、兼容 Redis 的键值后端。如果你已经熟悉 Redis,那就等于已经会用它:设置一个键、读回它、递增一个计数器,再附上一个存活时间(TTL),让条目到期后自行消失。每个应用都有自己隔离的命名空间,因此一个应用的会话键绝不会与另一个应用的缓存条目发生冲突。这里没有需要单独预置、加固或维持运行的 Redis 服务器,存储本身就是应用运行时的一部分,其容量按使用它的应用来匹配。
TTL 正是 KV 存储的核心,而它的行为完全符合你的预期。写入一个 30 分钟过期的会话令牌,窗口一到它就消失;把一次开销较大的 API 响应缓存五分钟,让它自行刷新;持有一个短暂的锁或一个会自动清空的限流窗口。由于键无需清理任务即可到期,你可以存放临时状态而不积攒垃圾。计数器同样是一等公民:原子性的递增与递减让你获得浏览计数、配额跟踪和简单的序列号,而不会出现读取-修改-写入的竞态。
这契合 osFoundry 的形态:一个自带密钥(BYOK)的桌面工作区,聊天、智能体、应用、代码、知识与数据都集中在一处。KV 存储是与应用其他数据并列的快速、易失层:凡是热、小、短命的数据都放这里,需要持久保存的记录则另存别处。兼容 Redis 意味着心智模型和命令词汇可以从你以往构建的任何东西中沿用过来,因此你无需为了跑通会话和缓存去学习一套新的 API。
主要功能
- 兼容 Redis 的键值 API:GET、SET、INCR、EXPIRE 等你早已熟悉的命令,无需学习新客户端
- 按键设置 TTL,让会话、缓存条目和锁自行到期,无需运行任何清理任务
- 按应用隔离命名空间:每个应用的键都限定在该应用内,绝不会与其他应用的键冲突
- 通过递增/递减实现原子计数器,用于浏览计数、配额和限流窗口,不存在竞态条件
- 作为应用的一部分在 osFoundry 内运行:无需预置,存储容量按使用它的应用来匹配
使用场景
- 应用开发者:用滑动 TTL 存储登录会话,让用户保持登录状态,过期令牌自行清除
- 后端构建者:将缓慢的第三方 API 响应缓存几分钟,以降低延迟和重复调用
- 智能体工具作者:维护一个每分钟的限流计数器,通过一个会过期的键自动重置
常见问题
它到底是真正的 Redis,还是只是类 Redis?
它兼容 Redis,也就是说它讲的是你早已在用的那套键值命令和语义:带过期的 SET、GET、INCR、DEL,因此你现有的习惯和代码模式可以直接沿用。它的价值在于内建于 osFoundry 的应用运行时,所以你无需为此单独搭建或加固一台 Redis 服务器。
哪些数据该放进 KV 存储,哪些该放进真正的数据库?
KV 用于热、小、短命的状态:会话、缓存、计数器、限流窗口和锁,凡是你乐于让它到期的都可以。需要长期保存并可查询的持久记录,请放进正规的数据库。KV 存储是快速、易失的层,而不是你的记录系统。
TTL 会让键自动到期吗?
会。当你为一个键设置存活时间后,一旦该窗口结束,它就会被移除,你这边无需任何清理任务。这正是它适合会话和缓存的原因:本该临时的数据会自行清除,而不是不断堆积。