web_socket实现原理
Posted changtao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了web_socket实现原理相关的知识,希望对你有一定的参考价值。
1.websocket和http的区别:
相对于http这种非持久化的协议来说,websocket协议是持久化的协议
http是一个客户端一个求情,服务端一个响应,这是http的生命周期.
而后http协议经过改进,http1.1一个请求可以接收多个响应,但是服务端不能主动发起.
而websocket 是基于http协议来完成握手,服务端可以主动打起请求.
2.轮询原理;
long poll 和 ajax long poll: 一直保持连接,直到有消息后返回,之后客服端再次发起连接 ajax: 客户端没隔一段时间就发起一个请求,询问有没有消息,一直发起请求询问
3.websocket 优势:
以上的两种轮询机制太浪费资源,
这时websocket协议出现,可以和服务端建立连接,并且告诉服务端是websocket连接,
服务端当收到消息时会主动发给客户端.
Websocket只需要一次HTTP握手,所以说整个通讯过程是建立在一次连接/状态中,
也就避免了HTTP的非状态性,服务端会一直知道你的信息,直到你关闭请求
以上是关于web_socket实现原理的主要内容,如果未能解决你的问题,请参考以下文章