zoukankan      html  css  js  c++  java
  • Atitit.分布式远程调用  rpc  rmi  CORBA的关系

    Atitit.分布式远程调用  rpc  rmi  CORBA的关系

     

     

    1. 远程调用(包括rpcrmirest1

    2. 分布式调用大体上就分为两类,RPC式的,REST式的1

    3. RPC(远程过程调用)是什么 1

    4. 传输的数据2

    5. 序列化与反序列化3

    6. ref  谁能用通俗的语言解释一下什么是 RPC 框架? - Java - 知乎.html3

     

     

    1. 远程调用(包括rpcrmirest

     

    RPC的协议有很多,比如最早的CORBA,Java RMI,Web Service的RPC风格,Hessian,Thrift,甚至Rest API。

     

    2. 分布式调用大体上就分为两类,RPC式的,REST式的

    ,两者的区别主要是就是:

    1. RPC是面向动作的(方法调用)

    2. REST是面向资源的(URL表示资源,HTTP动词表示动作)

     

    3. RPC(远程过程调用)是什么

    · 简单的说,RPC就是从一台机器(客户端)上通过参数传递的方式调用另一台机器(服务器)上的一个函数或方法(可以统称为服务)并得到返回的结果。

    · RPC 会隐藏底层的通讯细节(不需要直接处理Socket通讯或Http通讯)

    · RPC 是一个请求响应模型。客户端发起请求,服务器返回响应(类似于Http的工作方式)

    · RPC 在使用形式上像调用本地函数(或方法)一样去调用远程的函数(或方法)。



    远程过程调用发展历程

    · ONC RPC (开放网络计算的远程过程调用),OSF RPC(开放软件基金会的远程过程调用)

    · CORBACommon Object Request Broker Architecture公共对象请求代理体系结构)

    · DCOM(分布式组件对象模型),COM+

    · Java RMI

    · .NET Remoting

    · XML-RPCSOAPWeb Service

    · PHPRPCHessianJSON-RPC

    · Microsoft WCFWebAPI

    · ZeroC IceThriftGRPC

    · Hprose

     

    作者::  ★(attilax)>>>   绰号:老哇的爪子  全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊  汉字名:艾龙,  EMAIL:1466519819@qq.com

    转载请注明来源: http://blog.csdn.net/attilax

     

    4. 传输的数据

    RPC执行过程中,客户端与服务端需要相互传输数据,我们分别称之为客户端数据和服务端数据。对此的说明如下表:

    客户端数据:

    函数名:服务端PHP脚本中存在的函数。

    函数参数:客户端JavaScript脚本中的变量值。

    服务端数据:

    函数返回值:执行服务端PHP函数的返回值。

     

     

    5. 序列化与反序列化

    为了要传输客户端的变量值和服务端的函数返回值,需要对其进行序列化处理。与之相对应的在传输后还要进行反序列化处理。

    JavaScript中的变量的类型:基本类型和JSON类型(普通数组、元对象)

    PHP中的变量类型:基本类型和数组(普通数组和关联索引数组)

    PHP语言具有序列化和反序列化函数,而JavaScript语言中没有,因此我们要自己实现它。

     

     

    6. ref

    谁能用通俗的语言解释一下什么是 RPC 框架? - Java - 知乎.html

    几种分布式调用技术的比较 -- RPC VS REST - ITer_ZC的专栏 - 博客频道 - CSDN.NET.html

    三种主流的Web服务实现方案(REST+SOAP+XML-RPC)简述及比较 - Alexia(minmin) - 博客园.html

    如何实现 JavaScript RPC 应用 - shishengsoft的专栏 - 博客频道 - CSDN.NET.html

     

  • 相关阅读:
    Java 中几种常用的线程池
    阿里巴巴java工程师面试经验详情
    设计模式-备忘录模式
    设计模式-职责链模式
    设计模式-中介者模式
    设计模式-解释器模式
    设计模式-观察者模式
    设计模式-迭代器模式
    设计模式-命令模式
    设计模式-模板方法模式
  • 原文地址:https://www.cnblogs.com/attilax/p/15198532.html
Copyright © 2011-2022 走看看