单体架构、垂直应用架构、分布式、SOA、微服务之间有什么关系和区别
单体架构
例如一个电商项目,包括前端电商项目代码,后台管理代码,所有代码打包成一个jar,部署在一个tomcat中
垂直应用架构
将电商项目拆成 前端电商项目,后台管理项目,注册 登陆等通用功能重复写两遍,拆分成两个jar包,打包部署到tomcat
分布式架构
将单体架构的大项目拆分成多个小服务,每个小服务独立部署,soa与微服务架构都属于分布式架构
SOA架构
在分布式架构上进一步优化,增加一个注册中心,SOA架构可以理解为只有一个服务注册中心组件的微服务架构。
微服务架构
在SOA架构上进一步优化,增加网关,熔断,限流,配置中心等组件