zoukankan      html  css  js  c++  java
  • 简略整理一下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的归类很大可能是错的,对于这些老古董,其实不必太关心)

     

  • 相关阅读:
    MSSQL转MySql
    MVC 4中的坑
    IIS错误记录
    MongoDB C#备忘
    IL指令集 收藏【转载】
    使用aforg.net 录制摄像头 附源码
    使用aforg.net 捕获摄像头 附源码
    Tesseract parameters in 3.02 version
    Unity平台宏定义
    unity3d杂录【2】
  • 原文地址:https://www.cnblogs.com/andypeker/p/6069193.html
Copyright © 2011-2022 走看看