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的归类很大可能是错的,对于这些老古董,其实不必太关心)

 

::...
免责声明:
当前网页内容, 由 大妈 ZoomQuiet 使用工具: ScrapBook :: Firefox Extension 人工从互联网中收集并分享;
内容版权归原作者所有;
本人对内容的有效性/合法性不承担任何强制性责任.
若有不妥, 欢迎评注提醒:

或是邮件反馈可也:
askdama[AT]googlegroups.com



自怼圈

DU21.1
关于 ~ DebugUself with DAMA ;-)


关注公众号, 持续获得相关各种嗯哼:
zoomquiet


粤ICP备18025058号-1
公安备案号: 44049002000656 ...::