单体架构:
将业务的所有功能集中在一个项目中开发,打成一个包部署
优点:
架构简单
部署成本低
缺点:
耦合度高(维护困难、升级困难)
分布式架构:
根据业务功能对系统做拆分,每个业务功能模块作为独立项目开发,称为一个服务
优点:
降低服务耦合
有利于服务升级和拓展
缺点:
服务调用关系错综复杂
微服务的架构:
给分布式架构制定一个标准,进一步降低服务之间的耦合度,提高服务的独立性和灵活性。做到高内聚,低耦合。
因此,可以认为微服务是一种经过良好架构设计的分布式架构方案
微服务相比分布式服务来说,它的粒度更小,服务之间耦合度更低,由于每个微服务都由独立的小团队负责,因此它敏捷性更高,分布式服务最后都会向微服务架构演化,这是一种趋势, 不过服务微服务化后带来的挑战也是显而易见的,例如服务粒度小,数量大,后期运维将会很难