分布式下多节点WebSocket消息收发

1、使用场景

2、疑问

第一次发送请求后,通过N1,W2,到达service2,建立websocket连接。

1、接下来发送的消息,通过Ngixn后和网关gateway后还能落在service2上面吗?

如果不能落在service2上,需要怎么操作解决session问题?

答案:当同事提出这个问题的时候,我急忙想着怎么解决?没想过websocket的长连接,通过Ngixn的日志发现了端倪,日志里只打印了第一次建立连接时的请求,后续发消息的没有发现日志。所以我们

3、service与其他的服务有异步操作,其他服务需要调service来处理业务,如何保障处理完消息后能发送消息给到用户端。

这个就是websocket的session共享问题。我用了redis的发布订阅来处理。

4、问题

1、websocket在建立连接后大概一分钟后就自动close :经测试是由于Nginx的timeout时间没有设置加上后解决:close.code = 1006

bash 复制代码
proxy_connect_timeout 10s;
proxy_read_timeout 1h;
proxy_send_timeout 5s;

没有时间了,下次在补充。

https://blog.csdn.net/Q0717168/article/details/125667423

https://blog.csdn.net/qq_42402854/article/details/130948270

相关推荐
_F_y14 小时前
仿RabbitMQ实现消息队列-服务端核心模块实现(4)
分布式·rabbitmq
以太浮标14 小时前
华为eNSP模拟器综合实验之- MGRE多点GRE隧道详解
运维·网络·网络协议·网络安全·华为·信息与通信
时空自由民.15 小时前
WebSocket 协议介绍
网络·websocket·网络协议
Albert Edison17 小时前
【RabbitMQ】发布确认模式(使用案例)
分布式·rabbitmq·ruby
时空自由民.17 小时前
CAN ,CANFD,EtherCAT介绍
网络协议·计算机网络
Gh0st_Lx18 小时前
【6】为什么有了 HTTP/1.1 ,还要 HTTP/2 和 HTTP/3
网络协议·http·php
EXnf1SbYK18 小时前
Redis分布式锁进阶第十二篇:全系列终极兜底复盘 + 锁架构巡检落地 + 线上零事故收尾方案
redis·分布式·架构
学编程就要猛19 小时前
JavaEE初阶:网络原理-HTTP(下)
网络·网络协议·http
EXnf1SbYK19 小时前
Redis分布式锁进阶第八篇:锁超时乱序深度踩坑 + 看门狗失效真实溯源 + 业务长耗时标准化兜底方案
数据库·redis·分布式
EXnf1SbYK19 小时前
Redis分布式锁进阶第十一篇
数据库·redis·分布式