IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> HTTP通信与RPC通信区别 -> 正文阅读

[网络协议]HTTP通信与RPC通信区别

概念
HTTP,首先回顾一下计算机的七层协议:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层,tcp属于传输层协议,http是建立在tcp之上的应用层协议
RPC,即 Remote Procedure Call(远程过程调用),一种进程间的通信方式,允许像调用本地服务一样调用远程服务(rpc就像方法之间调用一样,很简单)

1、灵活性
RPC,要求服务器和客户端都采用相同的框架,相同语言
HTTP,跨语言、跨平台,更加灵活

2、传输协议
RPC,可以基于TCP协议,也可以基于HTTP、UDP等协议
HTTP,基于HTTP协议

3、性能消耗,主要在于序列化和反序列化的耗时
RPC,可以基于thrift实现高效的二进制传输
HTTP,大部分是通过json来实现的,字节大小和序列化耗时都比thrift要更消耗性能

4、网络开销
RPC,长链接,不必每次通信都要像http一样去3次握手什么的,减少了网络开销
HTTP,短链接

补充说明:

  1. 短连接: 指通讯双方有数据交互时,就建立一个连接,数据发送完成后,则断开此连接,即每次连接只完成一项业务的发送
  2. 长连接( keep-alive ): 指在一个连接上可以连续发送多个 数据包 ,在连接保持期间,如果没有数据包发送,需要双方发链路检测包
  3. 通俗的讲:
    (1)长连接就像是一通不挂机的电话:双方一直在线,随时可以通话,当然前提是你有足够的话费
    (2)短连接就相当于日常电话:当你有事的时候就给对方打电话,没有事情则及时挂断,下次有事情则重新打电话

参考: link

5、负载均衡
RPC,基本都自带了负载均衡策略(封装了“服务发现”,“负载均衡”,“熔断降级”一类面向服务的高级特性)
HTTP,需要配置Nginx,HAProxy来实现

6、服务治理(下游服务新增,重启,下线时如何不影响上游调用者)
RPC,能做到自动通知,不影响上游
HTTP,需要事先通知,修改Nginx/HAProxy配置

总结:

RPC,主要用于公司内部的服务调用,性能消耗低,传输效率高,服务治理方便(RPC框架一般都有注册中心,有丰富的监控管理;发布、下线接口、动态扩展等,对调用方来说是无感知、统一化的操作)
HTTP,主要用于对外的异构环境,浏览器接口调用,APP接口调用,第三方接口调用等

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-04-15 00:40:35  更:2022-04-15 00:41:48 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 3:22:54-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码