网站首页 > 精选教程 正文
项目上的预警通知,之前是通过前端定时轮询的,性能上存在一定问题,本次希望改成websocket的方式。技术预演使用spirngboot单独部署个后台应用,前端用html测试即可。
后端关键代码:
前端测试html
前端收到后台的消息
后端收到前端的消息。
乍一看,没啥问题,但一分钟后,却自动关闭了,前端出现close.咋回事??
检查nginx配置,配置如下:
location /basic/ {
proxy_set_header Upgrade $http_upgrade; #这是webSocket的配置
proxy_set_header Connection "Upgrade"; #这是webSocket的配置
proxy_http_version 1.1; #这两个最好也设置
proxy_pass http://127.0.0.1:8098/;
}
原来是没有设置proxy_read_timeout,proxy_read_timeout 默认60s断开,
可以把他设置大一点,你可以设置成自己需要的时间,我这里设置的是十分钟(600s).
修改配置如下,重启nginx: nginx.exe -s reload
location /basic/ {
proxy_set_header Upgrade $http_upgrade; #这是webSocket的配置
proxy_set_header Connection "Upgrade"; #这是webSocket的配置
proxy_http_version 1.1; #这两个最好也设置
proxy_read_timeout 6000s;
proxy_pass http://127.0.0.1:8098/;
}
再访问后,6000s内不会超时了,但超过仍然会,所以还是得从根本上解决问题。
连接之所以断掉,是因为在有限的时间内没有通信,如果每隔一定时间,发送和接收内容,那连接便不会断掉,所以需要加入心跳机制,而STOMP 1.1版本的帧,heart-beating(心跳)是默认启用的,默认10秒。也可以自行修改,例如改为5秒发一次消息:
后端也得改造下:
再次尝试,超过6000s后仍然可以收发消息,观察控制台,会有ping\pong类似心脏跳动的输出,5秒一次输出,证明改造成功。
以上就是测试demo,有错误的欢迎指正!!
猜你喜欢
- 2025-06-15 绿色清新教培行业年终工作总结PPT课件模板,需要收藏下载
- 2025-06-15 PPT模板「第0004期」清新水墨画风格,可下载直接用
- 2025-06-15 PPT 139 | 粉色渐变小清新春暖花开PPT模板
- 2025-06-15 【778期】38套清新雅致的通用PPT模板
- 2025-06-15 清新企业培训商务PPT模板(企业培训课件ppt)
- 2025-06-15 第1340期—淡雅简洁蓝绿清新扁平化工作计划ppt模板
- 2025-06-15 需要吗?第1254期:清新薄荷绿部门工作总结PPT模板
- 2025-06-15 3分钟搞定PPT!打工人必备的一键制作PPT全攻略
- 2025-06-15 GYB逐字稿 第11课 完成企业想法和计划 《产生你的企业想法》课件PPT
- 2025-06-15 两分钟!用DeepSeek制作ppt。(用deepseek和什么可以做ppt)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- nginx反向代理 (57)
- nginx日志 (56)
- nginx限制ip访问 (62)
- mac安装nginx (55)
- java和mysql (59)
- java中final (62)
- win10安装java (72)
- java启动参数 (64)
- java链表反转 (64)
- 字符串反转java (72)
- java逻辑运算符 (59)
- java 请求url (65)
- java信号量 (57)
- java定义枚举 (59)
- java字符串压缩 (56)
- java中的反射 (59)
- java 三维数组 (55)
- java插入排序 (68)
- java线程的状态 (62)
- java异步调用 (55)
- java中的异常处理 (62)
- java锁机制 (54)
- java静态内部类 (55)
- java怎么添加图片 (60)
- java 权限框架 (55)
本文暂时没有评论,来添加一个吧(●'◡'●)