基于Redis/RocketMQ + SpringBoot + Vue +Websocket 实现分布式、跨服务器节点共享的分布式简易聊天系统,通过该核心实例实现了跨服务器节点无法共享WebSocket会话Session,无法跨节点查询用户会话信息的痛点; 借助Redis实现了跨通道WebSocket通信,按通道进行会话交流的亮点; 借助RocketMQ实现高并发场景下的会话消费堆积、会话丢失问题。
主要亮点如下:
- 支持基于Redis多通道的订阅发送,按通道实现Session共享
- 支持基于Redis多通道的消息会话隔离,保证消息交流的安全性
- 支持基于Redis多通道消息监控、消息存储,实现离线消息的暂存
- 支持基于RocketMQ中间件的消息发布、订阅,按消息主题区分消息会话
- 支持基于RocketMQ中间件的消息分类处理,实现按标签共享Session、消费Session
- 支持基于RocketMQ中间件的消息离线发送,用户上线按照上次消费位点接收离线消息
- 支持基于RocketMQ中间件的消息监听,处理重复消息,实现消息发布的高效率
- 支持单聊、群聊、广播、按指定通道交流
评论