grpc 学习
2024-09-05 17:37:38
RPC概念:(参考:http://www.imooc.com/article/285514)
RPC(远程过程调用)一般用来实现部署在不同机器上的系统之间的方法调用,使得程序能够像访问本地系统资源一样,通过网络传输去访问远端系统资源。一般来说,RPC框架实现的架构原理都是类似的。
客户端调用:负责发起RPC调用,为调用方用户提供使用API。
服务端响应:主要是服务端业务逻辑实现。
序列化/反序列化:负责对RPC调用通过网络传输的内容进行序列化与反序列化,不同的RPC框架有不同的实现机制。一般分为文本(XML、JSON)与二进制(Java原生的、Hessian、protobuf、Thrift、Avro、Kryo、MessagePack),需要注意的是,不同的序列化方式在可读性、码流大小、支持的数据类型及性能等方面都存在较大差异,我们可以根据需要自行选择。
Stub:我们看成代理对象,它会屏蔽RPC调用过程中的复杂的网络处理逻辑,使其透明简单,且能够保持与本地调用一样的代码风格。
通信传输:即RPC的底层通信传输模块,一般通过Socket在客户端与服务端之间传递请求与应答消息。
最新文章
- 【repost】浏览器内核、渲染引擎、js引擎
- django tmeplate 循环基数
- UVa OJ 180 - Eeny Meeny
- 记录一些容易忘记的属性 -- UILabel
- MYSQL远程登录权限设置
- MySQL(11):存储引擎
- js中 ===与==
- ORACLE里锁有以下几种模式,v$locked_object,locked_mode
- [LeetCode] Design Linked List 设计链表
- 【面试必备】常见Java面试题大综合
- 条件分支SQL语句<;一>; Case When
- Recurrent Neural Network[Quasi RNN]
- call,apply,bind——js权威指南函数属性和方法章节读书笔记
- Python hashlib&;hmac 模块
- 转的,具体 https://www.cnblogs.com/icyJ/p/FreeShare.html
- CMMI三个过程域的流程及达到特定目标、共性目标的要求(RD需求管理过程,PI产品集成过程,TS技术解决方案)
- 最常使用Eclipse快捷键
- testng报告发邮件后css样式缺失问题
- Windows下安装和配置Apache2.2.22服务器+PHP5+Mysql5
- 帝国CMS 列表模板list.var支持程序代码