SuperAPI AI 工具集

catalyst-cache

数据与分析

查看项目

更新于 10-15 13:59

技能介绍

用途

Catalyst Cache 是 Catalyst 平台中的内存键值存储(in-memory key-value store),用于存放临时会话数据(session data)和短期临时数据(temporary data)。它通过 TTL(生存时间)机制控制数据的有效期,适合不需要长期持久化的场景。

该技能(skill)用于指导开发者正确执行缓存段(cache segment)与缓存键(cache key)的读写操作,并规避若干容易出错的细节。

主要能力

  • 缓存段与缓存键的管理:涉及 segment.get、segment.put、segment.delete、segment.update 等操作。
  • TTL 控制:TTL 以小时为单位,最大为 48 小时。
  • 字符串值存储:所有缓存值只能是字符串。
  • 提供参考文档 references/cache-basics.md,涵盖 SDK 操作、TTL 上限、字符串值限制,以及 segment.delete() 与 segment.update() 的易错点。

使用方式

  1. 获取 Segment ID:如果可用,使用 MCP 工具 CatalystbyZoho_List_Cache_Segments;否则从控制台或 .catalystrc 中获取。
  2. 加载 references/cache-basics.md:了解 SDK 操作、TTL 限制(最大 48 小时)以及 segment.delete() / segment.update() 的注意事项。
  3. 值处理:所有缓存值都是字符串,写入(put)前必须 JSON.stringify,读取(get)后必须 JSON.parse。
  4. TTL 行为:TTL 单位为小时(最大 48),不是秒。

关键注意事项

  • segment.update() 若在调用时不传过期(expiry)参数,会静默地把该键的 TTL 重置为 48 小时最大值(例如原本 1 小时的键会变成 48 小时的键)。
  • segment.delete() 并不会删除键,而是把 cache_value 置为 null,键本身仍然存在;之后调用 getValue() 会返回 null,HTTP 状态码为 200,且不会抛出异常。

适用场景

  • 会话数据(session data)
  • 临时数据(temporary data)
  • 需要 TTL 控制的短期缓存
  • 判断“缓存 vs Data Store”的取舍
  • 涉及 48 小时缓存上限的场景

触发条件

当查询涉及以下内容时使用本技能:"Cache"、"cache segment"、"cache key"、"cache value"、"TTL"、"in-memory store"、segment.get、segment.put、segment.delete、"session data"、"temporary data Catalyst"、"cache vs Data Store" 或 "48-hour cache"。

限制

  • 缓存值仅支持字符串类型。
  • TTL 最大为 48 小时。
  • 关于收费、价格、平台支持范围等信息,资料中暂未提供。