• 简略整理一下RPC、WebService、Restful、Json、Xml这些概念之间的关系


    RPC有2层含义:

    (1)      (协议层)编码方式

    (2)      (传输层)传输方式

     

    RPC

    协议层传输层

    TCP

    WebSocket

    Http(WebService)

    文本

    XML

    /

    /

    Xml-Http(SOAP)

    Json

    Json-RPC(TCP)

    Json-RPC(WebSocket)

    Json-Http

    Yaml

    *

    *

    *

    WSDL

    /

    /

    *

    *

    /

    /

    Corba

    *

    /

    /

    RMI

    2进制

    Thrift

    Thrift

    /

    /

    Protobuf

    Protobuf

    gRPC

    MsgPack

    MsgPack

    /

    /

    hessian

    hessian

    /

    /

    dobbo

    dobbo

    /

    /

    RestFul

     

    有些概念(技术)之间的关系不适合比较,因为不属于同一个层次;比如Restful、WebService, etc。

    众所周知,Json-RPC很普遍;但是Json-RPC并没有限制承载协议,不必只能用Http,WebSocket、TCP照样可以。

    有一个地方大家误会很多,Restful,以为与Http关系严密就像搞基;其实,RestFul也没有限制承载协议(会话层协议),不必非要Http,满足Restful的原则即可。

     

    另外,RestFul并非什么新鲜东西,其实满大街都是;我们能看见的Web服务,大多数是RestFul的,只不过实现不像RestFul期望得那么完整。

    (图表里,对Corba、RMI的归类很大可能是错的,对于这些老古董,其实不必太关心)

     

  • 相关阅读:
    函数式宏定义与普通函数
    linux之sort用法
    HDU 4390 Number Sequence 容斥原理
    HDU 4407 Sum 容斥原理
    HDU 4059 The Boss on Mars 容斥原理
    UVA12653 Buses
    UVA 12651 Triangles
    UVA 10892
    HDU 4292 Food
    HDU 4288 Coder
  • 原文地址:https://www.cnblogs.com/andypeker/p/6069193.html
Copyright © 2020-2023  润新知