分布式下多节点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

相关推荐
laoli_coding8 小时前
如何配置HTTPS站点访问的免费SSL域名证书
网络协议·https·node.js·ssl
ffqws_8 小时前
Redis 分布式锁:基于 Redisson 的实现与面试高频问答
redis·分布式·面试
六bring个六14 小时前
open Harmony中分布式软总线的学习任务清单
分布式·学习·c/c++·open harmony
wuqingshun31415914 小时前
说一下 Kafka 中关于事务消息的实现?
分布式·kafka
Keepingrun17 小时前
HTTP基础
网络·网络协议·http
apihz19 小时前
全球域名 WHOIS 信息实时查询免费 API 接口教程,支持1000+后缀
android·网络·网络协议·tcp/ip·apache·域名·whois
名字还没想好☜19 小时前
用 Redis + Redisson 实现分布式锁:从踩坑到生产可用
java·redis·分布式·junit·分布式锁·redisson
董可伦20 小时前
Spark 源码 | SparkSubmitArguments 参数解析(三)
大数据·分布式·spark
এ慕ོ冬℘゜20 小时前
前端核心知识体系进阶:从安全机制、网络协议到原生 JS 实战全解析
前端·网络协议·安全
ZPC821020 小时前
model bingxing
网络·人工智能·网络协议·机器人