http协议和websocket协议

http协议

        HTTP 即超文本传输协议,是一种获取网络资源 (例如图像、HTML 文档) 的应用层协议,它是互联网数据通信的基础,由请求和响应构成。通常,首先客户端会发送 HTTP 请求(在请求报文中会指定资源的 URL),然后用传输层的 TCP 建立连接,最后服务器响应请求做出应答,回传数据报文

websocket协议

        websocket 是 htm15 提供的一种浏览器与服务器进行全双工通讯的网络技术,属于应层协议。它基于TCP 传输协议,并复用 HTTP 的握手通道,浏览器和服务器只需要完成-次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输
        Websocket原理:客户端 websocket 服务器通知 (notify) 一个带有所有接收者ID 的事件,服务器接收后立即通知所有活跃的客户端,只有 ID 在接收者D 序列中的客户端才会处理这个事件。

Websocket 特点:
A.支持双向通信,实时性更强
B.可以发送文本,也可以发送二进制数据
建立在TCP 协议之上,服务端的实现比较容易c.D数据格式比较轻量,性能开销小,通信高效。
E没有同源限制,客户端可以与任意服务器通信F.协议标识符是 ws(如果加密,则为 wss),服务器网址就是 URL。G.与HTTP 协议有良好的兼容性,默认端口也是 80 和443,并且握手阶段采用 HTTP 协议因此握手时不容易屏蔽,能通过各种HTTP 代理服务器
 

HTTP(Hypertext Transfer Protocol)和WebSocket是两种不同的协议,它们有一些关键的区别:

1、连接性:
        HTTP: 是一种无状态协议,每个请求和响应之间是独立的,没有持久的连接。当客户端需要获取新的数据时,需要发起一个新的HTTP请求。
        WebSocket: 是一种全双工协议,它在客户端和服务器之间建立了一个持久的连接。一旦建立连接,它允许双方在任何时候都能互相发送数据。
2、通信方式:
        HTTP: 是一种请求-响应协议。客户端发送请求,服务器返回响应,然后连接就会关闭。这意味着服务器不能主动向客户端推送数据;客户端需要定期轮询或等待新的数据。
        WebSocket: 提供了双向通信的能力,允许服务器和客户端之间实时地推送数据。这样可以避免轮询,从而减少延迟。
3、头部开销:
        HTTP: 每个HTTP请求和响应都需要一系列的头部信息,这可能导致较大的开销,特别是在频繁的短连接中。
        WebSocket: 由于建立了持久连接,头部信息只需要在连接建立时发送一次,之后只需要发送实际的数据,减小了通信的开销。

4、安全性:
        HTTP: 在HTTP中,如果要保证数据的安全传输,通常需要使用TLS/SSL(HTTPS)协议。
        WebSocket: 与HTTP一样,WebSocket可以通过TLS/SSL进行安全传输,但也可以在非加密的连接上工作。在生产环境中,通常建议使用加密的WebSocket连接以确保数据的机密性和完整性。

5、应用场景:
        HTTP: 适用于客户端请求-服务器响应的场景,例如网页的加载和提交表单等。
        WebSocket: 适用于实时性要求较高、双向通信的应用,比如在线聊天、实时协作编辑、实时数据监控等。

        总的来说,HTTP和WebSocket都有它们适用的场景,选择哪个取决于应用的需求。在某些情况下,它们也可以结合使用,例如在HTTP中嵌入WebSocket连接。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值