单体应用和分布式架构的对比:
引入分布式架构带来的问题:
- 架构设计变得复杂(尤其是其中的分布式事务)。
- 部署单个服务会比较快,但是如果一次部署需要多个服务,流程会变得复杂。
- 系统的吞吐量会变大,但是响应时间会变长。
- 运维复杂度会因为服务变多而变得很复杂。
- 架构复杂导致学习曲线变大。
- 测试和查错的复杂度增大。
- 技术多元化,这会带来维护和运维的复杂度。
- 管理分布式系统中的服务和调度变得困难和复杂。
分布式架构解决了“单点”和“性能容量”的问题,引入了系统设计,以及管理和运维一大堆问题。现代各种基础设施的出现解决了这些问题。 微服务通常根据业务来划分边界,粒度通常是一个独立的业务,具体多大合适不是一开始就决定的,这是一个逐步拆分细化的过程,任何复杂的架构都是从最简单的应用慢慢演化过来的。
此文章为3月Day07学习笔记,内容来源于极客时间《左耳听风》,强烈推荐该课程!