您现在的位置是:物联网 >>正文
为什么有了HTTP,还需要WebSocket协议?
物联网2359人已围观
简介Http特点HTTP是基于TCP协议的,同一时间里,客户端和服务器只能有一方主动发数据,是半双工通信。通常,打开某个网页,我们每点击一次网页上的某个选项,前端就会发送一次HTTP请求,网站返回一次HT ...
HTTP是需W协议基于TCP协议的,同一时间里 ,需W协议客户端和服务器只能有一方主动发数据,需W协议是需W协议半双工通信。通常,需W协议打开某个网页 ,需W协议我们每点击一次网页上的需W协议某个选项,前端就会发送一次HTTP请求,需W协议网站返回一次HTTP响应。需W协议这种由客户端主动请求,需W协议服务器响应的需W协议方式满足大部分网页的功能场景。模板下载
但这种情况下,需W协议服务器不会主动给客户端发消息 。需W协议而类似网页游戏这样的需W协议场景 ,是需W协议需要客户端和服务器之间互相主动发大量数据。http就不适用了。
WebSocket是什么?
WebSocket 是一种用于在单个 TCP 连接上进行全双工通信的网络协议 。它使用类似于 HTTP 的握手来建立连接,然后使用单独的持久连接来进行通信。
这种方式使得 WebSocket 可以在浏览器和服务器之间进行实时通信 ,高防服务器而不需要多次发送 HTTP 请求来获取数据。这意味着连接是持久的,它一直保持打开 ,直到有一方主动关闭连接 。这使得 WebSocket 非常适合用于实时应用程序,因为它不需要不断地建立和关闭连接 。
WebSocket怎样建立连接?WebSocket 连接通常在客户端(例如浏览器)和服务器之间建立 。客户端发送一个 HTTP 请求来建立连接 ,然后服务器返回一个确认消息,表示已建立连接。之后 ,客户端和服务器可以通过这个连接进行双向通信。客户端可以向服务器发送消息 ,服务器也可以向客户端发送消息。服务器租用消息可以是任意的字节数组 ,并且可以使用任意的格式进行编码。

最常见的用途是在实时应用程序开发中 ,它有助于在客户端持续显示数据。由于后端服务器不断发回此数据,WebSocket 允许在已打开的连接中不间断地推送或传输此数据,使此类数据传输更快,并利用了应用程序的性能 。香港云服务器
聊天应用程序开发人员在一次性交换、发布 、广播消息等操作中调用 WebSocket 。由于使用相同的 WebSocket 连接来发送或接收消息,因此通信变得简单、轻量 、快捷 。在进行游戏应用程序开发的同时,服务器必须不间断地接收数据,而不要求刷新 UI 。WebSocket在不影响游戏应用程序 UI 的情况下实现了这一目标。
从上述几个示例中 ,我们大概知道了在什么情况下不太适合使用,亿华云例如数据交互周期很长 ,甚至几小时一次的情况或只需要一次性处理数据时,不应采用 WebSocket协议。在这些情况下,使用 HTTP 协议是一个明智的选择。由于 HTTP 和 WebSocket 都用于应用程序通信 ,因此人们常常感到困惑,很难从这两者中选择一个。
WebSocket 与 HTTP 的选择WebSocket 是一种框架双向协议。与此相反 ,HTTP 是建站模板一种单向协议 ,作用于 TCP 协议之上。由于WebSocket协议能够支持不间断的数据传输 ,因此主要用于实时应用程序开发。

在 WebSocket 中,通信发生在两端 ,这使其成为更快的协议。在 HTTP 中,连接是在一端建立的,这使得它比 WebSocket 有点慢。WebSocket 使用统一的 TCP 连接 ,需要一方终止连接。在它发生之前 ,连接保持活动状态。HTTP 需要为单独的请求建立不同的连接 。请求完成后 ,连接会自动断开。
Http 长轮询HTTP 请求发出后,一般会给服务器留一定的时间做响应,比如 3 秒,规定时间内没返回,就认为是超时 。
如果将 HTTP 请求将超时设置的很大,比如 30 秒,在这 30 秒内只要服务器收到了扫码请求 ,就立马返回给客户端网页 。如果超时 ,那就立马发起下一次请求 。
这样就减少了 HTTP 请求的个数 ,并且由于大部分情况下 ,用户都会在某个 30 秒的区间内做扫码操作,所以响应也是及时的 。

在 HTTP/1.1 里 ,只要客户端不问 ,服务端就不答。基于这样的特点 ,对于登录页面这样的简单场景,可以使用定时轮询或者长轮询的方式实现服务器推送(comet)的效果。
对于客户端和服务端之间需要频繁交互的复杂场景,比如网页游戏 ,都可以考虑使用 WebSocket 协议。
Tags:
转载:欢迎各位朋友分享到网络,但转载请说明文章出处“算法与编程”。http://www.bzli.cn/news/222a7899699.html
相关文章
Reverseip_py:一款功能强大的IP地址反向查询工具
物联网关于reverseip_pyreverseip_py是一款功能强大的IP地址反向查询工具,该工具使用了Python3开发,并基于IPAddress.com实现其IP地址反向查询功能。反向IP查找,指的 ...
【物联网】
阅读更多Telegram 的密聊真的不存储数据吗?
物联网Telegram 的密聊Secret Chat)使用端到端加密 (E2EE) 来保护消息的隐私。这种加密确保消息内容只能由参与密聊的两方解密,即使是 Telegram 服务器也无法读取内容。以下是密聊 ...
【物联网】
阅读更多污点检测与符号求解的协作关系分析
物联网污点检测与符号求解作为程序安全分析领域的两大核心技术,在漏洞检测中形成了互补性强的协作关系。污点检测通过数据流追踪定位潜在漏洞路径,而符号求解则通过路径约束求解验证路径可行性并生成触发漏洞的输入,两者 ...
【物联网】
阅读更多
热门文章
最新文章
友情链接
- 小新15使用U盘装系统教程(轻松操作,系统安装无忧)
- 使用U盘安装正版镜像系统的完整教程(简单易懂的安装教程及步骤,让您轻松拥有正版系统)
- 一键Ghost使用教程(快速学习如何使用一键Ghost软件进行系统备份和还原)
- 3G技术的运行状况及影响(探讨3G网络的发展现状、运行效果以及对用户的影响)
- Win10U官方安装教程(从零开始,快速学习Win10系统的安装与配置方法)
- 你需要了解的15个关键数据中心统计数据
- ARM服务器之战即将爆发:AWS正面对阵微软
- 450R5J换屏详细教程(步骤清晰易懂,教你如何更换450R5J的屏幕)
- 用u大侠装系统教程(从购买到安装,一步步教你如何用u大侠装系统)
- 如何装配和固态硬盘的完整教程(从购买到安装的一步步指南,让你的电脑速度翻倍) 亿华云企业服务器源码库香港物理机云服务器b2b信息平台网站建设