SuperAPI AI 工具集

ddd4j-cache

通用与其它

查看项目

更新于 10-15 21:48

技能介绍

用途:在 ddd4j 项目中做缓存选型、配置、实现与评审。先确定单节点还是分布式一致性语义,再选实现;上层统一通过 Cache/CacheManager/CasCache/AtomicCache 契约消费。

主要能力:本地缓存(Caffeine、Guava、Hutool)、原生 Redis 客户端(Lettuce、Jedis)、分布式锁与对象(Redisson)、多级统一抽象(JetCache)、Memcached(MemcachedCache)。覆盖 TTL 语义、锁、CAS、统计、本地与分布式语义对比,以及缓存支撑的幂等评审。

使用方式:按场景选实现;验证 get/put/invalidate、TTL 单位与边界值、并发访问与后端故障路径;若需幂等,用两个独立客户端做集群 CAS 竞争测试,确认唯一胜出、TTL 后重获与网络故障行为;接入 CacheStats 与业务指标,设定容量上限与降级策略。安装示例:npx skills add full-stack-skills/ddd4j-skills --skill ddd4j-cache。

适用场景:缓存实现选型与配置、TTL 与锁评审、集群安全幂等设计、缓存键租户隔离设计、Redis 不可用时的降级决策。

限制:本地缓存无跨实例一致性;集群幂等需共享原子 CAS,get-then-put 不能替代;TTL 语义因实现而异须逐项测试;REDIS_OBJECT_MAPPER 仅用于可信缓存数据;锁须有属主、超时与异常释放;CacheStats 不能替代业务成功指标;缓存不得当作数据库或数据权威;缓存故障不得上报为业务成功。HTTP/API 层幂等、Redis Stream 消息、核心 SPI 设计、会话令牌存储分别应使用 ddd4j-web、ddd4j-mq、ddd4j-core、ddd4j-auth。缓存键值日志不得暴露令牌、密码、证件号、手机号或租户密钥。资料未提供具体价格与平台信息。