• 分布式通信技术之远程调用


    远程调用的概念

    1.本地调用和远程调用

    本地调用: 进程内函数之间的相互调用

    远程调用:进程间函数的相互调用,是进程间通信的一种方式

    2.远程调用的两个分类

    本地过程调用LPC:运行在同一台机器上的进程之间的函数相互调用

    远程过程调用RPC: 运行在不同机器上的进程间函数之间的相互调用

    3.同步调用和异步调用的区别

    远程过程调用RPC存在同步和异步调用

    同步调用:调用方等待被调用方执行完成并返回结果

    异步调用:调用方调用后不用等待被调用方执行结果返回,并可以通过回调通知等方式获取返回结果

    RPC的原理及应用

    基本原理

    调用方采用参数传递的方式通过调用本机器上的一个函数或方法,去执行远程机器上的函数和方法并返回结果

    基本流程

    RPC的目的通过把第2到8步的几个过程封装起来,让用户看不到细节。所以RPC的核心是在用户眼里,远程过程调用和调用一次本地服务没什么不同

    RPC与本地调用的不同:

    1. 调用ID与函数的映射

    2. 序列化与反序列化

    3. 网络传输协议

    应用举例(Apache Dubbo)

    基本架构

    RMI的原理及应用

    基本原理

    RMI基于对象,充分利用了面向对象的思想去实现整个过程,其本质就是一种基于对象的RPC实现

    基本流程

    RMI通过对象作为远程接口来进行远程方法的调用,返回的结果也是对象形式,可以是java对象类型,也可以是基本数据类型。

    应用举例(EJB)

    RMI与RPC对比

  • 相关阅读:
    FindWindowEx使用方法
    什么是VSync
    getParameter
    高等数学积分公式大全
    为什么没有好用的Android游戏引擎?
    Best Time to Buy and Sell Stock III
    5.3 适配器模式(4.1)
    在动态网络下实现分布式共享存储
    人类智商一般在多少左右?爱因斯坦的智商是多少?
    海量数据处理面试题集锦
  • 原文地址:https://www.cnblogs.com/battlescars/p/rpc.html
Copyright © 2020-2023  润新知