学习随记--websocket

来源:互联网 发布:数据库约束是什么意思 编辑:程序博客网 时间:2024/06/11 01:25

知乎上一个讲解的非常好:https://www.zhihu.com/question/20215561/answer/40316953

首先,WebSocket是一个HTML5出的协议;

为什么要出这个协议?


因为:

1.HTTP不是持久链接,每次链接都耗时

即HTTP是非状态,每次都要重新鉴别,告诉服务端你是谁,浪费了流量和时间

SO->出现websocket

websocket是持久化的协议,

它是基于http;首先借用了HTTP完成一部分握手,建立websocket,然后HTTP完成工作接下来全是websocket;

即websocket只要一次HTTP握手,就建立在一次连接状态中,直到关闭请求



2.解决服务端客户端联系问题

需要认识现有的long poll 、ajax轮询

ajax轮询,简单说是setinterval($ajax,t),t时间一个单位像服务器发出ajax请求

long poo,采用轮询方式,但是是阻塞模型,不返回res,就一直连接,直到res

以上两种方式都是不断建立HTTP,只能客户端发起,服务端不能主动联系,会浪费资源和时间

websocket解决的就是这个问题,只要一次HTTP请求,有了相应,服务端会主动联系客户端,传res




原创粉丝点击