HTTP & WebSocket有什么区别?【专栏17】

前端人

共 923字,需浏览 2分钟

 ·

2021-07-20 17:10

1 什么是WebSocket?

WebSocket从满足基于Web的日益增长的实时通信需求应运而生,解决了客户端发起多个Http请求到服务器资源浏览器必须要在经过长时间的轮询问题,实现里多路复用,是全双工、双向、单套接字连接,在WebSocket协议下服务器和客户端可以同时发送信息。

2 WebSocket和Http的异同点

同:
  1. 建立在TCP之上,通过TCP协议来传输数据。

  2. 都是可靠性传输协议。

  3. 都是应用层协议。

异:
  1. WebSocket是HTML5中的协议,支持持久连接,HTTP不支持持久连接

  2. HTTP是单向协议,只能由客户端发起,做不到服务器主动向客户端推送信息。

3 WebSocket和Socket

Socket本身并不是一个协议,它工作在OSI模型会话层,是一个套接字,TCP/IP网络的API,是为了方便大家直接使用更底层协议而存在的一个抽象层。Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。

而WebSocket则是一个典型的应用层协议。

4 WebSocket  HTTP和TCP/IP

WebSocket和HTTP一样,都是建立在TCP之上,通过TCP来传输数据。

http和websocket并不能说是完全平等完全分开的两样东西,websocket准确地来说应该算是http的下属一个分类。

参考资料

  • https://zhihu.com/question/29615964
  • https://cnblogs.com/mengbin0546/p/12508848.html

说明

本专栏总共汇总了150道题,每道题目答案没有多余扯皮的部分,就是单纯的答案。

关注公众号,每天一到面试题,为下次跳槽准备,点击↓关注【鬼哥

当前进度【#017题】,如果你能点赞分享、鬼哥骑自行车也是开心的

浏览 37
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报