RPC基础

1 解决什么问题

现代软件系统,越来越讲究海量用户,传统的服务器体系在单个进程里面开多线程无法满足了;于是产生了分布式系统,将业务拆分成很多小的服务,也就是所谓的微服务:而它的基石就是RPC框架。
RPC:远程过程调用。
传统的socket编程与采用rpc的比较,如下图:
RPC基础_第1张图片

2 RPC分类

目前主流的rpc框架
grpc: google的 基于protobuf http2.x 支持多语言
thrift: facebook 支持多语言
Dubbo: 阿里的 Java实现
brpc: 百度 C++实现 支持默认协程,也可以设置常规的线程方式

3 框架原理

原理图如下:
RPC基础_第2张图片
核心功能࿱

你可能感兴趣的:(分布式,rpc,java,restful)