3.什么是面向复杂度架构设计

3.什么是面向复杂度架构设计

架构设计方法论


面向模式软件架构

  • 核心思想:应用经过验证的成熟 架构模式 ,例如MVC、Reactor等
  • 核心问题:知道模式,但是不知道什么时候用哪个模式
  • 太庞大,且比较理论化,看起来比较累

风险驱动架构设计

  • 核心思想:根据系统 风险 大小来设计软件架构
  • 核心问题:风险是一种概率预判,“ 一切皆有可能 ”
  • 建模部分的内容本质是 面向对象 设计的建模过程

DDD和整洁架构

  • DDD是可扩展架构的设计技巧,不是架构方法论
  • DDD兼顾架构设计和方案设计,大部分人会搞混
  • DDD、敏捷架构不关注存储和计算,只关注业务

面向复杂度

为什么做架构设计?

  • 因为架构很重要,所以要做架构设计
  • 为了提升开发效率,为了促进业务发展
  • 公司流程要求系统开发过程中必须有架构设计
  • 为了高性能、高可用、可扩展,所以要做架构设计

面向复杂度的架构设计

  • 本质:架构设计是为了降低软件系统的复杂度
    →怎么做架构设计
  • 思路:通过分析系统需求找到系统复杂的地方,然后设计方案
    →有哪些复杂度
  • 模式:复杂度来源:高性能、高可用、可扩展、安全、成本……
    →怎么降低复杂度
  • 套路:分库分表、缓存、集群、分片、微服务、DDD、异地多活……

架构设计环