websocket每秒创建新连接
Posted
技术标签:
【中文标题】websocket每秒创建新连接【英文标题】:websocket creating new connection every second 【发布时间】:2018-06-22 21:15:53 【问题描述】:我有一个 Angular 5 应用程序,它使用 socket.io-client 连接到托管在谷歌云平台上的 websocket 服务器。但是,我没有打开 1 个连接,而是在浏览器中看到正在创建多个连接,并且每秒打开一个新连接。我在连接打开的代码中添加了一个调试断点,并且仅在页面加载时触发一次。不知道为什么即使初始连接使用 101 代码成功,它仍然继续请求新连接。
private BASE_URL = 'wss://X.XXX.XX.XXX/';
private socket: any;
connectSocket(userId: string)
this.socket = io(this.BASE_URL, query: `userId=$userId`, transports: ['websocket'] );
【问题讨论】:
你的网络服务器是集群的,也就是说,它是不是由多个进程组成的? @angrylemon 不,它是一个实例。 可以显示连接码吗? @MarcosCasagrande 更新了帖子以显示代码 我能想到的唯一原因是服务器正在断开连接,而 socket.io 有一个重新连接选项。 【参考方案1】:我需要更多信息才能确定地回答这个问题,但我可以对这里发生的事情做出有根据的猜测。
我认为连接代码可能被放置在一段代码中,这些代码会一遍又一遍地执行,导致它显示出这种行为。
此外,如果这确实是服务器问题,您可以轻松查看服务器实际发回的内容,导致套接字关闭。在 Chrome 中,单击“网络”选项卡中请求的“名称”,然后单击“框架”选项卡 - 这应该会准确显示客户端和服务器之间传输的信息类型。
【讨论】:
以上是关于websocket每秒创建新连接的主要内容,如果未能解决你的问题,请参考以下文章