(1)Restful是基于Http应用协议的产物,RPC架构是基于TCP传输层协议的产物。
RPC架构的吞吐量和执行速度优于Restful。
Restful是一种轻量级,跨语言,跨平台的web服务方式,也是一种设计理念,强调将网络里面的一切事物看成是资源。向外暴露API,不同模块之间利用Rest进行通信,利用网络协议来通信,中间传输对象用json对象,因此不同模块之间实际上是透明的,只需要利用http协议,从发送端到接收端,接收端一般可以看作是服务器端,服务端自己可以解析网络传输的内容即可。
这种解析功能,web语言均可以实现,对于资源操作方式只有4种,因此很简单,根据对应的网络状态,对其进行响应即可。API其实也就是一个个的URL,对于该架构。
(2)复杂的大型应用也就不会使用这种架构Restful架构了。
RPC架构的全名远程过程调用,这个东西很强大,目前已经成为主流开发架构,其中java的DWR框架就可以类比,
现在RPC框架相当多,而且吞吐量巨大,是开发主流。整个RPC的原理图如下所示:
在Restful的架构方面,python的flask以及go的beego等均提供了简单高效的编程接口。
在RPC架构上,java的DWR等是比较成熟的开源框架。
RPC的概念模型以及实现解析:
分布式应用,云计算,微服务,作为其技术基石之一的RPC了解如何。
请看下一个章节博客