http协议和websocket协议的区别

简介: websocket是html5新增的全双工通讯协议,基于Tcp协议,属于应用层协议浏览器和服务器只需要一次握手就可以创建持久性的连接,并进行双向数据传输,也是解决了半双工通讯协议的弊端。简单来说就是客户端可以向服务器主动推送信息,服务器也可以主动向客户端主动推送协议。

一.websocket协议的概念

websocket是html5新增的全双工通讯协议,基于Tcp协议,属于应用层协议
浏览器和服务器只需要一次握手就可以创建持久性的连接,并进行双向数据传输,也是解决了半双工通讯协议的弊端。简单来说就是客户端可以向服务器主动推送信息,服务器也可以主动向客户端主动推送协议。


二.websocket协议的原理

websocket的原理:客户端向 WebSocket 服务器通知一个带有所有接收者ID的事件,服务器接收后立即通知所有活跃的客户端,只有ID在接收者ID序列中的客户端才会处理这个事件。


三.websocket协议的特点

1.支持双向通信,实时性更强
2.可以发送文本,也可以发送二进制数据
3.建立在Tcp协议之上,服务端的实现比较容易
4.数据格式比较轻量,性能消耗小,通讯高效
5.没有同源策略限制,客户端可以和任何服务端通信
6.协议标识符是ws,如果加密为wss。服务器的网址就是URL
7.与http协议有良好的兼容性,默认端口也是80和443,并且握手阶段还是用的http协议,因此握手时不会被屏蔽,能通过各种http代理服务器。


四.websocket的生命周期

1.Onopen(打开事件):在客户端与服务端建立连接后触发
2.onmessage(消息事件): 在服务端给客户端发来消息的时候触发
3.Onclose(关闭事件):在客户端与服务端建立关闭后触发
4.Onerror(错误事件):此事件在 WebSocket 连接或者端点发生错误时产生。


五.websocket的使用场景

弹幕
媒体聊天
协同编辑
基于位置的应用
体育实况更新
股票基金报价实时更新


六.与http最大的区别

wobsocket双向传输数据
http是单向的


相关文章
|
23天前
|
安全 前端开发 网络协议
|
27天前
|
网络协议 算法
《图解HTTP》- HTTP协议历史发展(下)
《图解HTTP》- HTTP协议历史发展(下)
33 0
|
25天前
|
缓存 移动开发 JSON
【网络安全 | 网络协议应用层】结合Wireshark讲解HTTP协议
【网络安全 | 网络协议应用层】结合Wireshark讲解HTTP协议
28 0
|
5天前
|
安全 算法 Java
【JavaEE初阶】 详解HTTPS协议加密过程
【JavaEE初阶】 详解HTTPS协议加密过程
|
5天前
|
Web App开发 网络协议 前端开发
【JavaEE初阶】 HTTP协议和使用Fiddler抓包
【JavaEE初阶】 HTTP协议和使用Fiddler抓包
|
15天前
|
消息中间件 Web App开发 监控
mqtt数据问题之如何实现webRTC 协议的监控视频压测
MQTT协议是一个轻量级的消息传输协议,设计用于物联网(IoT)环境中设备间的通信;本合集将详细阐述MQTT协议的基本原理、特性以及各种实际应用场景,供用户学习和参考。
35 0
|
23天前
|
前端开发 网络协议 JavaScript
|
27天前
|
缓存 网络协议 算法
二、《图解HTTP》- HTTP协议历史发展(上)
二、《图解HTTP》- HTTP协议历史发展(上)
24 0
|
XML 缓存 算法
HTTP协议详解
HTTP协议详解
431 1
HTTP协议详解
|
Web App开发 网络协议 .NET
第206天:http协议终极详解---看这一篇就够了
HTTP简介 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。
2577 0

相关产品

  • 云迁移中心