手牵手教你如何使用RPC!

      最后更新:2021-10-08 22:57:25 手机定位技术交流文章

      什么是RPC

      RPC-Remote Producting Call,通常称为远程程序呼叫,是一种计算机通信协议,允许以与当地服务相同的方式获得远程服务。

      假设Computer1在调用sayHi()方法,对于Computer1而言调用sayHi()方法就像调用本地方法一样,调用 –>返回。但其实Computer1调用的是Computer2中的sayHi()方法,RPC屏蔽了底层的实现细节,让调用者无需关注网络通信,数据传输等细节。

      分析

      我们认为,将实现下列目标:

      • 假设A型和B型机器之间的通信,假设A型和B型机器之间的通信模式,通常以爪哇的BIO或NIO为基础。
      • 工艺(服务)定位:使用某种通信手段,通过确定IP地址、端口号和方法名称,确定过程或技术。
      • 远程代理 : 因为本地呼叫方法( Services) 实际上是远程方法的本地代理, 可能需要远程代理 。 在 Java 中, 远程呼叫器可能使用 Java 的动态对象, 而远程呼叫是密封的 。
      • 序列:通过网络传递物体名称、方法名称、参数等。 转换为二进制传输是必要的, 可能需要不同的顺序技术替代方法。例如,Protobuf, Arvo等人。

      实现

      技术方案

      套接线、动态剂和反射以及爪哇原创的顺序被用来提出这些论点。

      框架架构

      难民保护委员会的结构由三部分组成:

      1. 在服务器端,服务提供商界定服务接口和服务实现类别。
      2. 在服务器终端,服务中心负责作为远程服务提供当地服务,并管理远程服务,供服务消费者使用。
      3. 客户服务用户利用远程代理来获取远程服务。

      具体实现

      我们首先界定必须调用的界面及其实现等级,在这种情况下是服务器服务和服务器服务Impl。

      首先,我们必须澄清通信传输规则。 作为最基本的呼叫方式之一,我们必须知道分类、方法名称、形式参数类型和实际参数。 根据上述分析以及爪哇一代代理类的需求,我们可以写下以下客户在联系代理类以通过通信获取返回输出流时向服务传输组合单词的方法。

      请记住,对于服务与客户的连接, 我们使用爪哇的本地组合,

      在完成客户对客户的要求后,我们必须在服务方接受和处理相应的要求。为了帮助确定与抽象类别相对应的执行类别,我们保留一张地图,以便于查阅匹配实例。我们专门开发了用于管理和维护的服务器类别,以便于处理客户的要求。

      ServerTask 是预设的内部线性实现等级 。要了解从 Socket 接收的信息, 请使用服务端 。

      测试

      服务端主方法

      客户端主方法

      输出

      注意

      本文件旨在简化在提出方法要求时直接构建实现实例,因此成本较高。如果实际开发需要这样的协议,个人电话和通信连接可自行使用第三方成熟的图书馆、数据传输加密等进行。 本条只是RPC思想陈述。

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/11429.html

          热门文章

          文章分类