RPC框架原理介绍.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
RPC 框架原理介绍 1 目 录 1. RPC 框架的概念 3 2. RPC 框架的原理解析 4 2.1 流程纵览 4 2.2 客户端调用 5 2.3 动态代理 5 2.4 网络传输 6 2.5 服务端数据接受 7 2.6 真实调用 8 2.7 服务端的动态加载 8 3. 总结 9 2 1. RPC 框架的概念 RPC (Remote Procedure Call )–远程过程调用,通过网络通信调用不同的服务,共同 支撑一个软件系统,微服务实现的基石技术。使用 RPC 可以解耦系统,方便维护,同时 增加系统处理请求的能力。 这里写图片描述 上面是一个简单的软件系统结构,我们拆分出来用户系统和订单系统做为服务存在,让 不同的站点去调用。 只需要引入各个服务的接口包, 在代码中调用 RPC 服务就跟调用本地方法一样, 我刚接 触到这种调用方式的时候颇为惊奇, 我明明调用的就是 java 语言方法啊 (已java 为例, 现在 RPC 框架一般都支持多语言),怎么就调用了远程的服务了呢?? 3 2. RPC 框架的原理解析 最近自己写了一个简单的 RPC 框架 KRPC ,本文原理分析结合中代码,均为该框架源码 2.1 流程纵览 这里写图片描述 如上图所示, 我将一个 RPC 调用流程概括为上图中 5 个流程, 左边 3 个为客户端流程, 右边两个为服务端流程。 下面就各流程进行解析 4 2.2 客户端调用 服务调用方在调用服务时,一般进行相关初始化,通过配置文件 / 配置中心 获取服务端 地址 用户调用: // 用户服务接口 public interface UserService { public User genericUser (Integer id,String name,Long phone) ; } // 调用方 // 服务初始化 KRPC.init( D:\\krpc\\service\\demo\\conf\\client.xml ); UserService service = ProxyFactory.create(UserService.class, demo ,demoService ); User user = service.genericUser( 1, yasin , 1888888888L ); 一开始接触 RPC 调用方法肯定就有疑惑, 它不是一个接口吗, 直接调用应该没啥效果啊, 我也没有引入实现包。 带着这个疑惑,我们就进入下

文档评论(0)

147****2695 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档