架构知识体系总结

架构知识体系总结

@Date 2018.08.30

一. 架构是什么?

  • 系统:相互协同可运行的实体,是一群关联个体组成, 这些个体可以是子系统/模块/组件等
  • 架构:顶层设计,需要明确系统包含哪些个体,明确个体运作和写作的规则
  • 框架:面向编程或者配置的半成品
  • 组件:技术维度的复用
  • 模块:业务维度的职责划分

二. 架构设计的背景

  • 软件生产力远远跟不上硬件和业务的发展, 软件的扩展非常复杂
  • 系统规模庞大,内部耦合严重,开发效率低
  • 系统耦合严重, 牵一发动全身, 后续修改和扩展困难
  • 系统逻辑复杂, 容易出问题, 出问题后很难排查和修复

三. 架构设计的目的

  • 解决软件系统复杂度
    • 熟悉和理解需求, 识别系统的复杂点, 并针对解决
    • 并不需要面面俱到, 不需要每个架构都具体CAP特性
    • 在一个有约束的条件(团队经验/成本/资源/进度/业务)下去求最合适的解
    • 需求驱动架构
  • 分析
    • 性能
    • 可扩展性
    • 高可用
    • 存储高可靠
    • 安全性/隐私性
    • 成本

我的博客即将入驻“云栖社区”,诚邀技术同仁一同入驻。

上一篇:MACOSX Apache ab压力测试


下一篇:[译]WCF RIA Services中的集合(1)