root
|
9605dca962
|
feat(cache): 配置属性 redis-cache.*(TTL/抖动/滑动/击穿锁)
|
2026-06-26 04:43:28 +08:00 |
|
root
|
ecbdfd8907
|
feat(cache): 值编解码器(fastjson 序列化 + 空值标记)
|
2026-06-26 04:41:02 +08:00 |
|
root
|
ce370afa83
|
feat(cache): 缓存常量与 key 构造器(前缀 + 环境隔离 + 锁 key 派生)
|
2026-06-26 04:38:02 +08:00 |
|
root
|
40882ecfaa
|
docs: 新增 Redis 缓存增强模板实现计划
11 个 TDD 任务:常量/KeyBuilder → Codec → Properties → 模板读写 →
getOrLoad 三防 → 自动装配 → 4 个集成测试(RoundTrip/穿透/expire-滑动/击穿并发)
→ README + 全量回归。含完整代码、精确命令与对照 spec 的自检。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-25 21:01:19 +08:00 |
|
root
|
ec2a8daf4b
|
docs: 新增 Redis 缓存增强模板设计文档
在现有 starter 内补齐编程式缓存能力的设计 spec:RedisCacheEnhanceTemplate
提供 get/set/delete/exists/expire/getOrLoad;getOrLoad 内置穿透/雪崩/击穿三防,
支持显式 expire 与可选滑动过期;独立 com.njcn.middle.cache 包、配置前缀 redis-cache,
不改动 stream、不新增依赖。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-25 20:49:08 +08:00 |
|
root
|
b649d6151d
|
chore: 清理 StreamTrimScheduler 过时 javadoc 与死代码
裁剪逻辑已改用 opsForStream().trim() 精确裁剪,但 javadoc 仍写着
XTRIM ... MAXLEN ~(近似裁剪),且 trimAll() 里残留注释掉的旧
connection.execute("XTRIM", ...) 死代码,二者均与现状矛盾。
- javadoc 改为精确裁剪,并注明 2.3.x 无近似重载故不用 ~
- 删除注释掉的旧 XTRIM 裸命令死代码
- 删除随之失效的 import(RedisCallback、StandardCharsets)
注:旧裸命令报错的真因是 ByteArrayOutput 无法解析 XTRIM 的整数
回复(CommandOutput.set(long) 抛 IllegalStateException),与 ~ 无关。
纯注释/import 清理,逻辑零改动,compile 通过。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-25 16:21:21 +08:00 |
|
root
|
373b488249
|
Merge remote-tracking branch 'origin/main'
|
2026-06-25 14:47:01 +08:00 |
|
hzj
|
fd9074de9b
|
移除~近似裁剪选项,替换成高级API调用
|
2026-06-25 13:59:45 +08:00 |
|
root
|
e3dc7aedf6
|
docs: add redis stream demo implementation plan
|
2026-06-25 11:05:07 +08:00 |
|
root
|
eb70ffabf2
|
docs: add redis stream demo design
|
2026-06-25 11:02:01 +08:00 |
|
root
|
74f68c9680
|
feat: Redis Stream Spring Boot starter 首次提交
封装 Redis Streams 收发,零业务依赖。含自动装配、发送模板、监听容器、
autoclaim 崩溃恢复+死信淘汰、stream 定时裁剪、gzip 编解码、环境隔离。
本次随提交的改进:
- per-handler 重试次数:getMaxRetryTimes() 覆写生效,全局 redis-stream.max-retry 兜底
- 死信回调传入反序列化后的业务消息(saveExceptionFromFields)
- pom 升级 maven-surefire-plugin 至 2.22.2,使 JUnit 5 测试真正执行
- 集成测试连接信息改为 -D 注入(默认 localhost:6379),凭据不入代码
- lombok 改为 optional,不污染下游依赖
- 新增 README 使用文档
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-24 20:55:12 +08:00 |
|