当前位置:   article > 正文

Rpc 原理_rpc provider与consumer

rpc provider与consumer

Rpc是什么?

Rpc(remote procedure call)即远程过程调用,为解决不同服务间相互调用的方法的复杂处理,让服务间调用如本地方法一般简单。

为什么需要Rpc框架?

因为服务架构的演变从最初的单机服务到如今的分布式,微服务,因为功能拆分的为服务之间需要一定程度的通信沟通,而传统服务间使用api请求存在各种问题,如负载,调用失败处理,异常处理,请求管理等,所以rpc框架就是为了解决这种问题。

RPC框架原理:

在RPC框架中主要有三个角色:Provider、Consumer和Registry。如下图所示:

 

图片发自简书App

节点角色说明:

* Server: 暴露服务的服务提供方。

* Client: 调用远程服务的服务消费方。

* Registry: 服务注册与发现的注册中心。

Rpc基本流程:

rpc机构组件拆分图:

1. client 以调用本地方法的方式调用服务方法

2. 使用rpcProxy代理 让 rpcInvoket调用 通过 rpcProtocol 对 参数组成的消息题进行加密传输给server

3.server 的RpcAcceptor用于接收client rpcConnedor(维持与服务的RpcChannel)传输的消息题,然后使用同样的RpcProtocol 进行解码

4 Server将解码结果 交给RpcProcessor处理调用过程,然后再委托给RpcInvokel处理参数返回结果

5 server 将结果加密传输给client 解密

rpc就是为了解决流程中的步骤,让用户无感知的装填如本地调用的方式调用远程服务方法。为了微服务,分布式应用更稳定,高效的开发运行。

 

成熟的Rpc框架:

1.dubbo框架

2.springCloud

3.gRpc

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/424591
推荐阅读
相关标签
  

闽ICP备14008679号