架构设计的目的

架构设计的误区

架构重要,所以要做架构设计

每个系统都要做架构设计

公司流程要求系统开发过程中必须有架构设计

为了高性能、高可用、可扩展,所以要做架构设计

架构设计的真正目的

解决软件系统复杂度带来的问题

简单的复杂度分析案例

学生管理系统

  • 功能:登录、注册、成绩管理、课程管理
  • 系统架构设计,识别复杂度
    • 性能:MySQL 足够数据库;Web 服务器用 Nginx
    • 可扩展性:空间不大
    • 高可用:宕机影响不大,不用考虑负载均衡,但需要存储高可靠,考虑多种异常:机器故障、机房故障。机器故障,设计 MySQL 同机房主备方案;机房故障,设计MySQL 跨机房同步方案。
    • 安全性:隐私信息保护:Nginx 提供 ACL 控制、用户账号密码管理、数据库访问权限控制
    • 成本:系统简单,需要的服务器不多,大学能 Cover