集群、分布式、SOA、微服务的概念及区别

集群:

不同服务器部署同一套应用服务对外提供访问,实现服务的负载均衡或者互备(热备,主从等),指同一种组件的多个实例,形成的逻辑上的整体。

单个节点可以提供完整服务。集群是物理形态

图片[1]-集群、分布式、SOA、微服务的概念及区别-不念博客

分布式:

服务的不同模块部署在不同的服务器上,单个节点不能提供完整服务,需要多节点协调提供服务(也可以是相同组件部署在不同节点、但节点间通过交换信息协作提供服务),分布式强调的是工作方式

SOA:

面向服务的架构,一种设计方法,其中包含多个服务,服务之间通过相互依赖最终提供一系列的功能。

一个服务通常以独立的形式存在于操作系统进程中。各个服务之间通过网络调用

  • 中心化实现:ESB(企业服务总线),各服务通过ESB进行交互,解决异构系统之间的连通性,通过协议转换、消息解析、消息路由把服务提供者的数据传送到服务消费者。很重,有一定的逻辑,可以解决一些公用逻辑的问题
  • 去中心化实现:微服务

微服务:

微服务:在SOA上做的升华,微服务架构强调的一个重点是业务需要彻底的组件化和服务化,原有的单个业务系统会拆分为多个可以独立开发、设计、运行的小应用。

这些小应用之间通过服务完成交互和集成

服务单一职责

轻量级通信:去掉ESB总线,采用restapi通信

© 版权声明
THE END