生产中大多数流行的 Web 服务器都有一个处理 HTTP 请求的进程(或线程)池。随着压力的增加,池的大小将会增加,因为每个进程/线程每次处理一个 HTTP 请求。每个额外的进程/线程使用更多的内存,创建新的进程/线程比创建新的套接字连接(这些进程/线程仍然必须这样做)要昂贵得多。大多数流行的 WebSocket 服务器框架都采用事件路径,这种路径往往可以扩展并执行得更好。
WebSocket 的主要好处是交互式 Web 应用程序的延迟连接更低。它将比 HTTP AJAX/long-poll (假设应用程序/服务器设计得当)更好地扩展和消耗更少的服务器资源,但 IMO 更低的延迟是 WebSocket 的主要好处,因为它将启用新类别的 Web 应用程序,这些应用程序在目前 AJAX/long-poll 的开销和延迟下是不可能的。
一旦 WebSocket 标准变得更加完善并获得更广泛的支持,将其用于需要经常与服务器通信的大多数新的交互式 Web 应用程序将是有意义的。对于现有的交互式 Web 应用程序,它将真正取决于当前 AJAX/long-poll 模型的工作效果。转换的努力将是不平凡的,因此在许多情况下,成本就是不值得的好处。