很久没更新博文了,刚看完极客时间中杨波老师的《微服务架构核心20讲》课程,趁热总结输出一下。
1. 什么是微服务架构?
微服务是一种架构风格,将单体服务划分为一组小的服务,服务之间相互协作,实现业务的功能。
每个服务运⾏在独⽴的进程中,服务间采⽤轻量级的通信机制协作(通常是HTTP/JSON)
2. 微服务架构的特点。
- 服务粒度小
- 服务边界清晰
- 服务间松耦合
- 服务可独立部署
- 可使用不同的技术栈开发
3. 微服务的利弊。
优点:
- 强模块化边界
- 可独⽴部署
- 技术多样性
缺点:
- 分布式系统复杂性
- 最终⼀致性
- 运维复杂性
- 测试复杂性
4. 什么时候使用微服务?
- 业务复杂性比较小时,微服务架构比单块服务的生产力要低,此时单块服务更适合。
- 当业务复杂性较高,可考虑切换为微服务架构。(一般经验值:100人研发团队以上)
5.微服务的组织架构
跨职能产品型架构:端到端Ownership理念, 1个平台团队,N个产品团队,每个团队都有架构、设计、开发、测试、运维的角色。