HTTP 和 WebSocket的区别

有关http和WebSocket 的区别网上有很多的质料。

个人在此仅仅是记录以下自己的学习心得,自己的理解。

1. http协议是用在应用层的协议,他是基于tcp协议的,http协议建立链接也必须要有三次握手才能发送信息。

  http链接分为短链接,长链接,短链接是每次请求都要三次握手才能发送自己的信息。即每一个request对应一个response。长链接是在一定的期限内保持链接。保持TCP连接不断开。客户端与服务器通信,必须要有客户端发起然后服务器返回结果。客户端是主动的,服务器是被动的。

2. WebSocket

  WebSocket他是为了解决客户端发起多个http请求到服务器资源浏览器必须要经过长时间的轮训问题而生的,他实现了多路复用,他是全双工通信。在webSocket协议下客服端和浏览器可以同时发送信息。

建立了WenSocket之后服务器不必在浏览器发送request请求之后才能发送信息到浏览器。这时的服务器已有主动权想什么时候发就可以发送信息到服务器。而且信息当中不必在带有head的部分信息了与http的长链接通信来说,这种方式,不仅能降低服务器的压力。而且信息当中也减少了部分多余的信息。  

时间: 2025-01-01 12:17:55

HTTP 和 WebSocket的区别的相关文章

rpc和websocket的区别

虽然很久以前用过rpc但是当时没用过websocket,也没做过对比,现在就对比一下 rpc的用法是客户端直接调用服务端的函数,其实他就是把数据传给服务端,服务端处理完以后返回给客户端, websocket是把数据发出去,他是在tcp之上一层的,他有发送结束标志,就是一次ws.send的结束,服务器会知道,服务器按照协定可以拿出完整的一次ws.send那么区别就出来了:websocket并不关系对方拿到数据后处理的过程是否完成,而rpc是和处理过程相关的,其实他们不是同一个级别的东西.如果是短连

WebSocket 介绍(一)

WebSocket 发起单个请求,服务端不需要等待客服端,客户端在任何时候也能发消息到服务端,减少了轮询时候的延迟.轮询与WebSocket的区别.简历一次连接后,服务器能给客户端发多次. 基于http的实时消息是相当的复杂的,在无状态的请求中维持回话的状态增加了复杂度,跨域是曲折的,使用ajax处理请求有序请求需要考虑更多.通过ajax进行交流也不简单.每一个延伸http功能的目的不是增加他的复杂度.websocket 可以大大简化实时通信应用中的链接. Websocket是关于标准 Webs

Web端即时通讯技术盘点:短轮询、Comet、Websocket、SSE

摘要 Web端即时通讯技术因受限于浏览器的设计限制,一直以来实现起来并不容易,主流的Web端即时通讯 方案大致有4种:传统Ajax短轮询.Comet技术.WebSocket技术.SSE(Server-sent Events).本文将简要介绍这4种技术的原理,并指出各自的异同点.优缺点等. 1. 前言 Web端即时通讯技术因受限于浏览器的设计限制,一直以来实现起来并不容易,主流的Web端即时通讯方案大致有4种:传统Ajax短轮询. Comet技术.WebSocket技术.SSE(Server-se

webSocket学习

### 一.首先查了一下socket和websocket的区别 要了解,这两者的区别,最好的方法就是了解二者本身,那么区别也就不言而喻了. 原文出处: TheAlchemist 当我们探讨两件事物的区别和联系时,我们想探讨些什么? 前段时间写了两篇介绍 HTTP 和 WebSocket 的文章,回复中有人说希望了解下WebSocket和Socket的区别.这个问题之前也有想过,自己对此是有大概的答案,可是并不太确定,于是去搜集了些资料(其实就是各种Google),看了很多以前的文档,觉得有些故事

借助Nodejs探究WebSocket

文章导读: 一.概述-what's WebSocket? 二.运行在浏览器中的WebSocket客户端+使用ws模块搭建的简单服务器 三.Node中的WebSocket 四.socket.io 五.扩展阅读 一.概述-what's WebSocket? 1.1 为什么我们需要WebSocket这样的实时的通信协议? WebSocket是web通信方式的一种,像我们熟知的HTTP协议也是web通信方式的一种.但是我们知道HTTP协议是一种无状态的协议,其服务端本身不具备识别客户端的能力,必须借助外

WebSocket 实现群聊 - 简单测试例子

B/S中一般通信和WebSocket的区别: 在B/S结构的应用中,传统的通信机制是请求-响应的模式,也就是说只有客户端发送请求,服务端才会给出相应的响应(不考虑程序问题或者是其他原因),服务器不能够主动的为浏览器推送消息.但是WebSocket可以实现客户端和服务端的双向通信,其原理就是在客户端和服务器端建立一个通信的管道,来实现客户端和服务器端的双向通信. 通过在写例子的过程中,我的理解是(Java为例-注解方式):服务器端通过注解为方法注册监听事件(项目启动会自动扫描这些注解然后进行装载配

Spring消息之WebSocket

一.WebSocket简介 WebSocket 的定义?WebSocket是HTML5下一种全双工通信协议.在建立连接后,WebSocket服务器端和客户端都能主动的向对方发送和接收数据,就像Socket一样. WebSocket 的由来?众所周知,HTTP协议有“无连接”.“不可靠”.“尽最大努力”的特点.WebSocket的出现可以看成是HTTP协议为了支持长连接所打的一个大补丁.首先,由 IETF 制定发布了WebSocket 协议.后来,HTML5为了在Web端支持WebSocket协议

WebSocket实现web即时通信(后端nodejs实现)

WebSocket实现web即时通信 一.首先看一下,HTTP.ajax轮询.long poll和WebSocket的区别: 1.HTTP 协议(短连接):一个 Request 一个 Response.缺陷:通信只能由客户端发起.--------------------------------------------------------------------------------2.ajax轮询:ajax轮询的原理非常简单,让浏览器隔个几秒就发送一次请求,询问服务器是否有新信息.轮询的效

learning websocket protocol

websocket的产生背景: 众所周知,Web应用的通信过程通常是客户端通过浏览器发出一个请求,服务器端接收请求后进行处理并返回结果给客户端,客户端浏览器将信息呈现.这种机制对于信息变化不是特别频繁的应用可以良好支撑,但对于实时要求高.海量并发的应用来说显得捉襟见肘,尤其在当前业界移动互联网蓬勃发展的趋势下,高并发与用户实时响应是Web应用经常面临的问题,比如金融证券的实时信息.Web导航应用中的地理位置获取.社交网络的实时消息推送等. http/websocket的区别: http 通常采用