云计算——RPC中间件

RPC(Remote Procedure Call),是一种中间件框架,主要用于云计算。

作用是使计算机可以像调用本地函数一样,远程调用部署在另一个服务器上的服务,RPC框架会自动处理所有相关的网络通信和数据转换。

RPC工作过程

1.客户端调用:计算机调用一个本地代理对象(Client Stub)用来完成任务

2.序列化:Stub将所需要传输的数据指令进行打包序列化

3.数据传输:将序列化后的数据发送给服务器

4.服务端处理:服务器代理对象(Server Stub 或 Skeleton),接收数据,进行反序列化,调用本地业务逻辑函数

5.结果返回:服务器代理对象完成处理,将数据重新序列化,发送回客户端

常见RPC

Apache Dubbo:一个高性能的 Java RPC 框架,提供了完整的服务治理能力。

gRPC:由 Google 开源的高性能、通用的 RPC 框架,广泛应用于微服务通信。

Hadoop:其分布式文件系统(HDFS)的节点间通信也依赖于自定义的 RPC 协议。

这些中间件在基础 RPC 之上,增加了服务发现、负载均衡、容错、监控等高级功能,使得开发者能更专注于业务逻辑。

RPC 与 REST 的主要区别

特性 RPC (如 gRPC) REST (如 HTTP API)
设计核心 面向函数/动作,直接调用远程方法。 面向资源,通过标准方法(GET/POST)操作资源
性能 更高。通常使用二进制协议(如 Protobuf),序列化效率高。 中等。通常使用文本协议(如 JSON),可读性好但体积较大。
耦合性 紧耦合。客户端和服务端需遵循预定义的接口契约。 松耦合。通过统一的接口与资源交互,更灵活。
适用场景 内部微服务通信、高性能要求、实时流式处理 对外公开的 API、Web/移动端应用后端。
相关推荐
卖萌的斜阳1 分钟前
W55MH32L-EVB 上手测评:硬件 TCP/IP 加持的以太网单片机,MicroPython 零门槛开发
单片机·网络协议·tcp/ip
用户83344239661414 分钟前
Qt6 实现 TCP/UDP/组播 透明中继抓包工具 | 流量录制回放 | 工业设备调试
网络协议
CryptoPP2 小时前
BSE股票K线数据接入实战:从接口调用到前端图表展示
大数据·前端·网络·人工智能·websocket·网络协议
ITxiaobing20232 小时前
程序化广告RTB场景下IP地理定位服务的精度与工程架构选型
网络协议·tcp/ip·架构
Qimooidea3 小时前
祁木 CAD Translator:基于阿里云百炼与 DeepSeek 的图纸翻译实战
阿里云·云计算
阿米亚波5 小时前
【EVE-NG 实战】防火墙基础(VLAN · VRRP · NAT · ACL · 静态路由)
运维·网络·笔记·网络协议·计算机网络·网络安全·运维开发
楚来客6 小时前
云计算全栈架构详解
云计算
tiantianuser6 小时前
NVME-oF IP 设计2 :设计之前的调研!
网络·网络协议·rdma·roce v2·nvme of
Elastic 中国社区官方博客7 小时前
如何为阿里云 Elasticsearch 创建推理端点,连接器,Workflow 并写入数据
大数据·人工智能·elasticsearch·搜索引擎·阿里云·云计算·全文检索
2401_873479407 小时前
如何识别代理IP和伪装流量?用IP情报工具三步穿透住宅代理伪装
网络·数据库·网络协议·tcp/ip·ip