HTTP RESTFul RPC

一、简介

(1)HTTP(Hypertext Transfer Protocol)是一种应用层协议。它经常用于在Web和服务器之间通讯,或服务与服务之间通讯。

(2)RESTFul 约束HTTP协议实现上的规范设计。

(3)RPC(Remote Procedure Call)远程过程调用方法。它经常用于服务与服务之间通讯。当前服务调用其他服务时,能够像调用函数一样。

RPC的实现可以基于TCP协议,也可以基于HTTP协议。

在基于TCP协议的情况下,服务的调用方和提供方需要建立Socket连接,然后调用方通过Socket将需要调用的接口名称、方法名称和参数序列化后传递给提供方。

http是TCP的上层协议

二、对于我自己理解

HTTP是协议RESTFul是规范RPC是具体方法

协议用来定义规则、规范用来约束实现,方法用来具体调用

三、落地案例

Spring Cloud 的OpenFeign 就是RPC的实现,采用http协议,使用RESTFul规范约束

Dubbo 就是RPC的实现,采用TCP

TCP比http更靠近底层协议,冗余东西更少,性能也就更好

相关推荐
欧洵.25 分钟前
HTTPS加密流程:从原理到关键要点拆解
网络协议·http·https
七夜zippoe3 小时前
HTTP协议深度解析与实现:从请求响应到HTTP/3的完整指南
python·网络协议·http·quic·帧结构
码农幻想梦5 小时前
实验九 Restful和ajax实现
后端·ajax·restful
xkxnq5 小时前
第四阶段:Vue 进阶与生态整合(第 48 天)(Vue 与 Axios 整合:实现 HTTP 请求的封装与拦截)
前端·vue.js·http
极安代理6 小时前
HTTP代理,什么是HTTP代理,HTTP代理的用途有哪些?
网络·网络协议·http
李少兄7 小时前
FHIR 资源查询实战指南:从 HTTP 接口到 Java 客户端的完整实现
java·网络协议·http
Knight_AL7 小时前
深入理解 ZLMediaKit HTTP Hook 机制
网络·网络协议·http
Grassto7 小时前
HTTP请求超时?大数据量下的网关超时问题处理方案,流式处理,附go语言实现
后端·http·golang·go
Knight_AL1 天前
WebRTC / HLS / HTTP-FLV 的本质区别与选型指南
网络协议·http·webrtc
程序猿编码1 天前
高性能HTTP服务压测工具:设计思路与实现原理(C/C++代码实现)
c语言·网络·c++·网络协议·tcp/ip·http