Nginx代理websocket配置(解决websocket异常断开连接tcp连接不断问题)

本文介绍了如何在Nginx中配置WebSocket代理以解决因Android客户端频繁断网导致的TCP连接数过多问题。通过设置Nginx配置文件,确保在无消息10秒后关闭连接,从而避免连接数持续增长。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

场景

SpringBoot+Vue整合WebSocket实现前后端消息推送:

SpringBoot+Vue整合WebSocket实现前后端消息推送_的博客-优快云博客

在上面集成Websocket实现消息推送的基础上。

除给web端页面进行推送数据,还需要给Android端推送数据。

在特殊的业务场景下,Android会经常性断网和关机,SpringBoot后台jar包部署在Windows服务器上。

当终端过多且累计一段时间后,因频繁断网和关机导致的与后台jar包tcp连接数不会关闭,

当超过最大连接数时(8000),则该服务会提示拒绝连接。

Windows上查看连接数除了使用命令之外,还可以借助于其它第三方工具比如Cports端口扫描工具等。

在jar包所在服务上运行exe,如果该服务器上还有其他端口服务存在,可进行筛选指定端口的连接

比如只筛选7777端口,在筛选器中输入

include:both:tcp:7777

注:

博客:
https://blog.youkuaiyun.com/badao_liumang_qizhi?
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

1、用Android模拟器以及websocket测试软件来模拟上面异常关闭连接(断网)连接数不变的情况

首先建立起多个连接,可以看到连接数会增多。

然后将APP的网络突然断掉,此时可以看到连接数并不会被关掉

当网络再次恢复时,连接数会持续增多

此时可以通过cports工具选中连接数并关闭

或者直接重启后台jar

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值