微服务的优点
# 微服务的优点
使大型复杂应用可以持续交付部署
- 可测试性: 自动化测试是持续交付部署的关键, 服务的小型化使服务的自动化测试编写和执行变得更加简单
- 可部署性: 服务独立运行, 部署时不需与其他人员沟通
- 可以形成小而自治, 松散耦合的团队, 团队之间各自管理负责的服务, 独有代码仓库, 自动化部署流水线
服务较小易于维护. 解决了单体用用代码库庞大, 导致代码提交部署周期长, bug牵一发而动全身问题
可以独立扩展部署. 解决了单体应用的难以扩展, 不同业务模块对资源要求不一致, 在选择服务器时还要同时满足所有需求的问题
容易实现新技术. 可以摆脱单体应用长期依赖过时技术栈的问题
容错性更高.
可以实现团队自治
# 缺点
增加了应用的复杂性, 将会面临分布式应用的CAP问题
# 导航
本来主要记录微服务设计实现与落地的一些方式方法: