如题所述,我在一个特定的服务器需要频繁的请求数据,一直建连请求,建连请求这会有很大的开销,不知道JS有没有办法实现HTTP长连接,后面的数据请求就一直复用这个连接的通道?(忽略websocket)
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
websocket.io
http1.1默认已经开启keep-alive,除非服务器主动写入connection-close到header才会关闭连接。所以你的担心是多余的。你可以通过CRUL命令检查keep-alive是否正常。
curl -Iv http://www.baidu.com 2>&1 | grep -i 'connection #0'
长连接正常时将显示下面的输出
* Connection #0 to host www.baidu.com left intact
Connection... left intact表示服务器没有关闭连接,客户端可以复用连接。
不想用websocket就用长轮询。
消息量一般使用websocket足够,要高端可以考虑 阿里开源的 RocketMQ
websockt?
使用websocket
网络套接字
websocket.io
http1.1默认已经开启keep-alive,除非服务器主动写入connection-close到header才会关闭连接。所以你的担心是多余的。
你可以通过CRUL命令检查keep-alive是否正常。
长连接正常时将显示下面的输出
Connection... left intact表示服务器没有关闭连接,客户端可以复用连接。
不想用websocket就用长轮询。
消息量一般使用websocket足够,要高端可以考虑 阿里开源的 RocketMQ
websockt?
使用websocket
网络套接字