进程间通信(IPC,Inter-Process Communication)
进程是计算机分配资源的最小单位
RPC 和 rest 区别:
REST是一种设计风格。
RPC的思想是把本地函数映射到API,也就是说一个API对应的是一个function,我本地有一个getAllUsers,远程也能通过某种约定的协议来调用这个getAllUsers。至于这个协议是Socket、是HTTP还是别的什么都无关紧要;
RPC中的主体都是动作,表示我要做什么。
而REST,它的URL主体是资源。而且也仅支持HTTP协议,规定了使用HTTP Method表达本次要做的动作,类型一般也不超过那四五种。这些动作表达了对资源仅有的几种转化方式。
RPC的根本问题是耦合。RPC客户端以多种方式与服务实现紧密耦合,并且很难在不中断客户端的情况下更改服务实现。RPC更偏向内部调用,REST更偏向外部调用。
SOA: 理论模型,也是一个设计思想。服务治理中心 将多个系统集中化消息规范进行统一治理 (ESB为典型事例,阿里的dubbo)
soa 对服务治理拆分的不够彻底,跟服务上可能有依赖,当一个服务节点挂调,可能影响整个系统运行。
有序 、复用、高效
将各系统无序的数据变成有序的,系统的服务化、 业务的服务化
这里说一句微服务和SOA的区别,微服务架构和SOA理念正好相反
微服务架构以组件化为理念将高耦合进行解藕