文章目录

  • 什么是微服务架构
  • 微服务架构的利弊
  • 康威法则
  • 微服务架构适用性
  • 微服务的组织架构


什么是微服务架构

关键字:loosely coupled

微服务架构的核心特点:

  • 一组小的服务
  • 独立的进程
  • 轻量级通信
  • 基于业务能力
  • 独立部署
  • 无集中式管理

具有边界上下文的面向服务的体系结构
service oriented architecture with bounded context

微服务架构的利弊

微服务架构的优势:

  • 强模块化边界
  • 可独立部署
  • 技术多样性

微服务架构的劣势:

  • 分布式复杂性
  • 最终一致性
  • 测试复杂性
  • 运维复杂性

康威法则

设计系统的企业受限于生产设计,这些设计是企业沟通结构的副本——Melvin Conway(1967)。

这意味着设计系统的企业,它们生产的设计等同于企业内的沟通结构。下图说明了此概念:

服务型公司架构设计 企业服务架构_服务型公司架构设计

该图展现了企业现有沟通结构,简单地说:企业结构等于系统设计。

核心观点:

  • 第一定律:企业沟通方式会通过系统设计表达出来
  • 第二定律:再多的时间也没办法让任务完美至极,但总有时间能将它完成
  • 第三定律:线型系统和线型组织架构间有潜在的异质同态特性
  • 第四定律:大系统比小系统更适用于任务分解

微服务架构适用性

微服务需求的基础设施投入占比较大,在项目前期,单体应用足以满足业务要求时,不建议直接使用微服务。

服务型公司架构设计 企业服务架构_微服务_02


一般来说,一个项目有百人以上的规模,或者有团队拆分的必要性,则可以考虑微服务架构。对于初步的项目研发,决策上单块优先。

随着业务发展,规模扩大,人员增加,服务边界更加稳定和清晰,逐步将单体架构演化为微服务架构。

服务型公司架构设计 企业服务架构_系统设计_03

微服务的组织架构

传统的独立职能部门划分,沟通合作成本巨大、业务支持反应慢、产品反馈周期长、研发能力低下。

微服务模式下,需围绕服务,组建跨职能团队,以及公共的平台级别的团队。

服务型公司架构设计 企业服务架构_微服务架构_04

who build it,who run it !

更好更快速响应,快速迭代。

服务型公司架构设计 企业服务架构_组织架构_05