http长连接,短连接和websocket

1.链接

1.1 长链接

http1.1以后默认使用长连接,响应头部会加入响应代码

Connection:keep-alive;

在使用长连接的时候,比如在使用网页的时候(如果是长连接的),那么在用户多次访问服务端的时候TCP链接不会关闭,会一直复用这个链接。
长连接也不是一直保持链接的,时间的设置来自于apache服务器的设定时间。

1.2 短链接

http1.0之前使用的是短连接,即一个点击就返回一个response,这次请求就回结束了。

1.3 对比

长连接 短连接
链接 链接可以复用 链接不可以复用
点击数 保持链接 无效请求多,服务器压力大
场景 保持链接,减少客户端的请求 一种可以得到结果就不用请求的场景(支付)
实时性 有延时 有延时
数据压力 重复发送http头部 重复发送http头部

解决上诉问题,提出了websocket

2.websocket

websocket只需要一次链接就能保持链接,服务端一直知道你的存在,直到你自己关闭链接才会关闭。
NOTE:websocket需要浏览器的支持的
网上找到了一个例子,到时候可以去看看

FAQ

Q:HTTP 和 WebSocket 有什么关系?
A:Websocket 其实是一个新协议,跟 HTTP 协议基本没有关系,只是为了兼容现有浏览器的握手规范而已,也就是说它是 HTTP 协议上的一种补充。

猜你喜欢

转载自blog.csdn.net/zrqsyh/article/details/89842823