WebSockets:有助于减少开销?

Ivo*_*Ivo 8 javascript http overhead websocket node.js

我正在构建一个动态搜索(每次击键更新):我目前的方案是,在每次击键时,向服务器发送一个新的AJAX请求并以JSON格式返回数据.

我考虑为每个搜索"会话"打开一个WebSocket,以节省一些开销.我知道这会节省时间,但问题是,考虑到这些参数,它是否真的值得:80ms平均ping时间166ms:每次击键之间的时间,假设用户类型相对较快最差情况下1MB/s的传输速率,每次击键时必须收到的每个数据包不超过1KB.该应用程序还需要30-40毫秒的时间来将搜索结果焊接到DOM.

我发现这个:HTTP与Websockets相关的开销,但它是一个不同的用例.

除了纯HTTP开销之外,websockets还会减少什么吗?HTTP开销是多少(假设没有cookie和最小标头)?

我猜HTTP请求在每个请求上打开一个新的网络套接字,而WebSocket允许我们一直只使用一个.如果我的理解是正确的,那么打开新网络套接字的实际开销是多少?

xtr*_*rem 3

在像您这样的情况下,WebSocket 似乎提供了更好的性能。

网络连接

  • 小握手标头
  • 握手后进行全双工通信。
  • 连接建立后,每个传输的请求/响应仅添加 2 个字节

HTTP

  • Http 标头与每个请求一起发送

另一方面,WebSocket 是一项相对较新的技术。明智的做法是调查 Web 浏览器支持潜在的网络相关问题。

参考:

http://websocket.org/quantum.html

http://www.youtube.com/watch?v=Z897fkPn7Rw

http://en.wikipedia.org/wiki/WebSocket#Browser_support