从同一个客户端有两个不同的websocket连接到同一个服务器有什么好处吗?对我来说,这似乎是一个糟糕的设计选择,但是有什么理由/为什么它应该更好地工作?多个websocket连接
33
A
回答
56
有几个原因,你可能想这样做,但他们可能不太常见的(至少目前还没有):
- 你加密和要发送未加密的数据/接收(例如,某些数据庞大但不敏感)。
- 您既有流媒体数据又有延迟敏感数据:想象一下偶尔会在游戏内部流式传输视频的互动游戏。您不希望大媒体流延迟收到延迟敏感的正常游戏消息。
- 你既有文本(例如JSON控制消息)和二进制数据(类型数组或blob),也不想打扰添加自己的协议层来区分,因为WebSockets已经为你做这件事。
- 您有多个WebSocket子协议(URI后的可选设置),您支持并且页面要访问多个WebSocket子协议(每个WebSocket连接仅限于一个子协议)。
- 您有几个不同的WebSocket服务位于同一个Web服务器和端口后面。客户端选择每个连接的方式可能取决于URI路径,URI方案(ws或wss),子协议,或者甚至是客户端到服务器的第一条消息。
我确定还有其他的原因,但这些都是我能想到的。
+0
+1非常丰富! – Jonas 2012-02-13 23:26:51
0
我目前正在寻找有两个连接到同一个websocket的解决方案。我的理由:
- 我写了QUnit测试用例,我想模拟多个客户端,检查不同客户的正确反应
0
我发现,它可以使更简单,当你的客户端逻辑只是订阅服务器管理的某些对象的更新。您可以为每个元素打开一个套接字,而不是为单个通道设计自定义订阅协议。
比方说,你在
获得通过REST API元素的集合http://myserver/api/some-elements
你可以使用一个插座的URL像这样订阅单个元素的更新:
ws://myserver/api/some-elements/42/updates
当然之一可以争辩说,这并不适合复杂的网页。但是,对于小而简单的应用,它可能会让您的生活变得更加轻松。
相关问题
- 1. 多个HTML5 WebSocket连接
- 2. websocket未连接
- 3. WebSocket连接。 Android
- 4. WebSocket连接
- 5. WebSocket连接AWS
- 6. NodeJS - 更多用户连接WebSocket
- 7. 用于多种用途的Websocket连接
- 8. WebSocket连接超时
- 9. Websocket连接设置
- 10. Firefox Websocket双连接
- 11. WebSocket连接和Tritium
- 12. Pusherapp/Websocket未连接
- 13. Heroku的WebSocket连接
- 14. 的WebSocket服务器接收多个连接
- 15. nodejs-websocket检测非websocket连接尝试
- 16. 无法通过websocket连接连接
- 17. 重新连接到同一个Websocket
- 18. System.Net.Sockets.SocketException当创建一个websocket连接
- 19. 客户端可以创建多少个WebSocket连接
- 20. 如何使用socket.io从客户端创建多个websocket连接?
- 21. WebSocket在此浏览器中连接另一个websocket
- 22. 跨域WebSocket连接[Spring Boot]
- 23. 从Meteor.js打开Websocket连接
- 24. 如何检查websocket连接?
- 25. 验证WebSocket连接源
- 26. Heroku WebSocket连接超时
- 27. iPhone:Unitt WebSocket连接问题
- 28. 将Websocket连接到Poco库
- 29. websocket连接无效 - Socket.IO
- 30. 保持WebSocket连接活着
REQUEST_URI是否也相同? – 2012-02-12 11:23:18
@Shiplu嗯。一个人不应该通过uri传达信息,因为它只做一次。在这种情况下,让我们说**是**。 – Christian 2012-02-12 18:55:35
封闭选民请解释为什么? **为什么我的问题没有建设性?** – Christian 2012-02-12 18:55:52