当前位置:   article > 正文

SpringBoot--什么是RPC_springboot rpc

springboot rpc

01: 分布式系统理论
02: 什么是RPC
03: Dubbo及Zookeeper介绍 & 安装zookeeper
04: 安装dubbo-admin
05: 服务注册发现实战

1. SpringBoot--什么是RPC

RPC两个核心模块:通讯,序列化。


1.1 什么是RPC

RPC【Remote Procedure Call】是指远程过程调用,是一种进程间通信方式,他
是一种技术的思想,而不是规范。它允许程序调用另一个地址空间(通常是共享网络
的另一台机器上)的过程或函数,而不用程序员显式编码这个远程调用的细节。即程
序员无论是调用本地的还是远程的函数,本质上编写的调用代码基本相同。

也就是说两台服务器AB,一个应用部署在A服务器上,想要调用B服务器上应用提供
的函数/方法,由于不在一个内存空间,不能直接调用,需要通过网络来表达调用的语
义和传达调用的数据。为什么要用RPC呢?就是无法在一个进程内,甚至一个计算机内
通过本地调用的方式完成的需求,比如不同的系统间的通讯,甚至不同的组织间的通
讯,由于计算能力需要横向扩展,需要在多台机器组成的集群上部署应用。RPC就是要
像调用本地的函数一样去调远程函数;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

1.2 RPC原理

在这里插入图片描述
简化理解
在这里插入图片描述

  • 客户端(Client): 服务的调用方。
  • 服务端(Server):真正的服务提供者。
  • 客户端存根(Client Stub):存放服务端的地址消息,再将客户端的请求参数打包成网络消息,然后通过网络远程发送给服务方。
    服务端存根(Service Stub):接收客户端发送过来的消息,将消息解包,并调用本地的方法。


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

闽ICP备14008679号