温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

nginx配置websocket代理转发以及java实现websocket的示例分析

发布时间:2021-11-15 15:41:03 来源:亿速云 阅读:549 作者:柒染 栏目:大数据

今天就跟大家聊聊有关nginx配置websocket代理转发以及java实现websocket的示例分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

nginx配置
        location ~* /websocket {
           proxy_pass http://web-servers;
           proxy_http_version 1.1;
           proxy_set_header Upgrade $http_upgrade;
           proxy_set_header Connection "upgrade";
           proxy_read_timeout 3600s;
        }
注意要点
  • 前端需要在$proxy_read_timeout 时间内主动与后端保持心跳(ping)来维持会话,使其在用户无操作时不断开

  • nginx upstream 用连接符“-”,而不是下划线,防止 tomcat8.5.x 以后的版本出现问题

Error during WebSocket handshake: Unexpected response code: 400
一些思考过程
讨论要点:
1、身份:客户端/服务端、客户端可能是浏览器也可能是后端;
2、模式:点对点/广播、给指定批量通过业务过滤的部分用户发消息;
3、几个概念:cookie、http session id、websocket userId、websocket session id;
4、疑难:websocket会话长时间保持(nginx代理转发 + 前端定时轮询ping)、权限问题(是否需要登录、http session过期是否disconnect websocket session,即websocket是否connect是否依赖于http session的是否存在)、集群环境服务端主动推送指定的客户端(已建立的会话连接可能不在本地当前节点)

看完上述内容,你们对nginx配置websocket代理转发以及java实现websocket的示例分析有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI