码迷,mamicode.com
首页 > Web开发 > 详细

WebSocket Vs HTTP

时间:2020-05-15 09:35:50      阅读:60      评论:0      收藏:0      [点我收藏+]

标签:一个   持久性   双向   多个   学习   min   使用   推送   使用场景   

因为 HTTP 协议有一个缺陷:通信只能由客户端发起,当客户端与服务器需要频繁通信时,HTTP 协议非常低效,为什么低效?因为 HTTP 接口之下是 TCP/TSL 套接字(Socket)连接。每一次请求,通常都会重新建立一次 TCP/TSL 握手;在请求结束之后,断开这个链接,也许你听说过面试常问的“TCP 协议的三次握手和四次分手”,这个过程,比我们想象的要慢很多。
而 WebSocket 是一种在单个 TCP/TSL 连接上,进行全双工、双向通信的协议。WebSocket 可以让客户端与服务器之间的数据交换变得更加简单高效,服务端也可以主动向客户端推送数据。在 WebSocket API 中,浏览器和服务器只需要完成一次握手,两者之间就可以直接创建持久性的连接,并进行双向数据传输。对于 web terminal 这种应用,WebSocket 就非常高效。
说到这里,也许你了解到 WebSocket 可以全双工通信,但还不知道要不要用 WebSocket,那么我先问你两个问题:
?你的应用提供多个用户相互交流吗?
?你的应用是展示服务器端经常变动的数据吗?

如果你的答案是肯定的,那么请学习 WebSocket 并尽情的使用吧,如果是否定的,那么可以看下典型的 7 个使用场景,在大脑里留个印象:
1.社交订阅,多人聊天
2.多玩家游戏
3.协同编辑,在线文档
4.流式数据,股票 K 线
5.在线教育
6.基于位置的应用
7.实时监控

WebSocket Vs HTTP

标签:一个   持久性   双向   多个   学习   min   使用   推送   使用场景   

原文地址:https://www.cnblogs.com/kylingx/p/12892744.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!