RabbitMQ实现分布式WebSocket通信

RabbitMQ基本操作: https://blog.csdn.net/Michael_lcf/article/details/124677268
RabbitMQ的5大核心概念: https://blog.csdn.net/Michael_lcf/article/details/126435452
RabbitMQ实现分布式WebSocket通信: https://blog.csdn.net/Michael_lcf/article/details/126403772

1、实现思路

1、WebSocket接收用户或者接口传过来的数据时,统一发送到RabbitMQ。

2、每个服务器监听RabbitMQ数据并获取数据,通过判断数据中persons是否为空来判断是单发还是群发,若persons不为空有用户id,每个服务器对比自己session中是否有这个用户id,若没有则不操作,若有则推送给该用户消息。
链接:

3、使用websocket在线测试 (websocket-test.com)测试工具,可以发送JSON数据来指定发给那个用户,数据格式如下:

{
    
    
	"persons":["101","201"],
	"msg":"你好啊 XXX 啊哈"
}

2、效果截图

2.1 单用户推送消息

2.1 多用户推送消息

2.1 多用户间发送消息

3、代码实现

gitee链接: https://gitee.com/michael_linux/spring-security-study/tree/master/websocket

猜你喜欢

转载自blog.csdn.net/Michael_lcf/article/details/126403772