web_socket实现原理

本文深入探讨了WebSocket协议与HTTP协议的主要区别,强调WebSocket的持久化特性及其优于轮询机制的效率,详细解释了WebSocket如何通过一次HTTP握手实现双向通信,减少资源消耗。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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的非状态性,服务端会一直知道你的信息,直到你关闭请求

 

转载于:https://www.cnblogs.com/changtao/p/10841010.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值