当前位置:网站首页>gRPC intro 1:RPC
gRPC intro 1:RPC
2022-08-04 05:32:00 【real沛林】
gRPC is google RPC,so we need to learn RPC first.
official google link:https://www.grpc.io/docs/
GitHub link:https://github.com/grpc/grpc
前言:RPC
what is RPC
Remote Procedure Call(RPC):远程过程调用。当两个物理分离的子系统需要建立逻辑上的关联时,RPC 是牵线搭桥的常见技术手段之一。除 RPC 之外,常见的多系统数据交互方案还有分布式消息队列、HTTP 请求调用、数据库和分布式缓存等。其中 RPC 和 HTTP 调用是没有经过中间件的。
过程是什么? 过程就是业务处理、计算任务,更直白理解,就是程序。(像调用本地方法一样调用远程的过程。)

RPC Requirement
- 网络协议和网络IO模型对其透明
- 信息格式对其透明
- 应该有跨语言能力
RPC Component
RPC采用Client-Server结构,通过Request-Response消息模式实现。
- Client
- Server
- Stub/Proxy
- Message Protocol
- Transfer/Network Protocol
- Selector/Processor: “负责执行RPC接口实现” 的角色.包括:管理RPC接口的注册,判断客户端的请求权限,控制接口实现类的执行在内
- IDL
影响RPC框架性能的因素
- 使用的网络IO模型
- 基于的网络协议
- 消息封装格式。消息封装格式的设计是目前各种RPC框架性能差异的最重要原因,这就是为什么几乎所有主流的RPC框架都会设计私有的消息封装格式的原因.dubbo中消息体数据包含dubbo版本号,接口名称,接口版本,方法名称,参数类型列表,参数,附加信息
- 序列化和反序列化
边栏推荐
猜你喜欢

用PPAPI插件技术在Web上显示会议视频、桌面、PPT等

基于Webrtc和Janus的多人视频会议系统开发4 - 改造信令交互系统完成sdp交换过程

C语言结构体(必须掌握版)

LeetCode_Nov_4th_Week

Deep Learning Theory - Overfitting, Underfitting, Regularization, Optimizers

2020-03-27

Amazon Cloud Technology Build On-Amazon Neptune's Knowledge Graph-Based Recommendation Model Building Experience

Shell基础

第二章 STA相关概念

第三章 标准单元库(下)
随机推荐
[日常办公][杂项][vscode]tab space
题目1000:输入两个整数a和b,计算a+b的和,此题是多组测试数据
2020-03-27
[日常办公][shell]常用代码段
Deep learning, "grain and grass" first--On the way to obtain data sets
The Unity of ML - agents interpret parameter Settings
LeetCode_Dec_2nd_Week
分布式cache项目
LeetCode_Dec_2nd_Week
C语言数组的深度分析
webrtc技术名词和关键技术要点:SVC,REMB,SVC...
Detailed steps to install MySQL
file editor
华为鲲鹏arm服务器下使用webrtc和boost踩坑记--编译篇
第三章 标准单元库(上)
DRA821 环境搭建
虚幻引擎 5 完整指南[2022六月最新课程学习内容]
Stream API
Rules.make - suitable for viewing in edit mode
[开发杂项][编辑器][代码阅读]ctags&vim