集成必要性功能
This commit is contained in:
@@ -52,7 +52,6 @@ Redis 相关能力分成两类:
|
||||
### 6. 多 MQ 的真实边界
|
||||
虽然模块描述写了支持 Redis / RocketMQ / RabbitMQ / Kafka,
|
||||
但本 starter 的自动配置主要是 Redis + Rabbit。
|
||||
RocketMQ / Kafka 的业务化接入在 `rdms-spring-boot-starter-websocket` 里有更完整示例。
|
||||
|
||||
## 自动配置入口
|
||||
`META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports`:
|
||||
@@ -78,13 +77,6 @@ RocketMQ / Kafka 的业务化接入在 `rdms-spring-boot-starter-websocket` 里
|
||||
2. 先按第 2 节使用 `Pub/Sub`(这是项目里最常见路径)。
|
||||
3. 需要可恢复消费时,再按第 3 节接入 `Stream`。
|
||||
|
||||
WebSocket 场景建议:
|
||||
1. 多实例广播: `rdms.websocket.sender-type: redis`
|
||||
2. 单机部署: 保持 `rdms.websocket.sender-type: local`
|
||||
|
||||
说明:
|
||||
1. 只要存在 `AbstractRedisChannelMessageListener` Bean,框架会自动注册 Redis 监听容器。
|
||||
|
||||
## 2. 使用 Redis Pub/Sub(广播)
|
||||
适用场景: 通知广播、在线会话广播、对可靠性要求不高但强调实时性。
|
||||
|
||||
@@ -232,13 +224,6 @@ public class DemoRedisMessageInterceptor implements RedisMessageInterceptor {
|
||||
1. Redis Stream 要求 Redis 版本 >= 5.0
|
||||
2. 只有存在 Stream 监听器时,重投/清理定时任务才会生效
|
||||
|
||||
## 与 WebSocket 的关系
|
||||
`rdms-spring-boot-starter-websocket` 直接复用本模块能力:
|
||||
1. `sender-type=redis` 时使用 `RedisMQTemplate` + `AbstractRedisChannelMessageListener`
|
||||
2. `sender-type=rabbitmq/rocketmq/kafka` 时切换到对应中间件实现
|
||||
|
||||
你可以参考 websocket 模块作为本模块的落地样板。
|
||||
|
||||
## 当前已知注意点
|
||||
1. `AbstractRedisStreamMessageListener` 有一个 `(streamKey, group)` 构造器,内部把 `messageType` 置空;而消费反序列化仍依赖 `messageType`。
|
||||
建议优先使用无参构造路径(即泛型推断消息类型的默认方式)。
|
||||
|
||||
Reference in New Issue
Block a user