负载均衡web套接字和长

如果我有一台运行在支持Web套接字的3台机器上的Web应用程序,并且一台客户机连接到其中一台机器上,那么每个请求是否总是会进入同一台机器,或者负载平衡器是否可以将其发送到不同的机器?

基本上,一旦Web浏览器通过Web套接字建立连接,负载平衡器是否可以将每个请求发送到不同的服务器?

如果是这样,哪个负载平衡器可以做到这一点?

另外,如果我使用像检测浏览器兼容性并选择适当协议的氛围这样的框架,这会如何影响负载平衡机会?


正如在HTTP协议握手完成后,Wikipedia上的websockets协议的基本描述中所述,其他通信是通过与确切服务器的持久TCP连接执行的。

因此,在通常的HTTP意义上不会有“请求”,只有2个端点(服务器和客户端)交换数据。 这就是为什么通常意义上的负载平衡是不可能的(通常不需要,因为服务器能够同时处理很多并发的TCP连接 - 这里就此进行了很好的讨论)。 这就是为什么通过websocket发送数据总是会被正确的服务器机器(正在等待的机器)接收到的。

如果你真的需要这个,你可以使用L3负载平衡器,如上面提到的那篇文章中所述。


“基本上,一旦网络浏览器通过网络套接字建立连接,负载均衡器是否可以将每个请求发送到不同的服务器?”

如果那是你想要的行动,是的。

Riverbed有一个软件负载平衡器可以实现这一点。 https://splash.riverbed.com/docs/DOC-1451

链接地址: http://www.djcxy.com/p/44717.html

上一篇: Load balancing web sockets and long

下一篇: Setting up a websocket on Apache?