🏗️ 系统架构设计师
软考高级 - 专业技术人员职业资格考试
🔴 考试重点
系统架构设计、软件架构模式、分布式系统、微服务架构是考试的核心内容!
快速导航
🏗️ 核心知识领域
系统规划
项目提出、可行性研究、方案制订
系统分析设计
需求工程、结构化方法、UML建模
设计模式
GoF 23种模式、设计原则详解
数据库系统
数据模型、范式理论、事务管理
软件工程
开发模型、测试方法、项目管理
系统可靠性
容错技术、备份恢复、可靠性计算
信息系统基础
企业信息化、ERP、CRM、电子商务
新技术趋势
云计算、微服务、容器化、大数据
系统架构设计
架构设计原则、架构风格、架构评估
软件架构
架构模式、设计模式、架构文档
分布式系统
分布式架构、微服务、服务治理
数据架构
数据建模、数据库设计、大数据架构
安全架构
安全设计、身份认证、访问控制、威胁分析
性能架构
性能优化、缓存策略、负载均衡、监控分析
🧠 核心理论知识
架构理论基础
架构定义
IEEE 1471、4+1视图模型、架构决策
质量属性
性能、可用性、安全性、可修改性、可测试性、互操作性
架构风格
分层、管道过滤器、事件驱动、仓库、解释器
设计模式详解
创建型模式(5种)
单例、工厂方法、抽象工厂、建造者、原型
结构型模式(7种)
适配器、桥接、组合、装饰器、外观、享元、代理
行为型模式(11种)
观察者、策略、命令、状态、责任链、访问者等
分布式系统理论
CAP定理
一致性、可用性、分区容错性不可兼得
BASE理论
基本可用、软状态、最终一致性
分布式算法
Raft、Paxos、拜占庭将军问题
📐 重要公式和计算
性能计算公式
响应时间计算
响应时间 = 服务时间 + 等待时间
吞吐量 = 1 / 响应时间
阿姆达尔定律
加速比 = 1 / ((1-P) + P/N)
P为可并行部分比例,N为处理器数量
利特尔定律
L = λ × W
L=系统中平均用户数,λ=到达率,W=平均响应时间
可靠性计算公式
可用性计算
可用性 = MTBF / (MTBF + MTTR)
MTBF=平均故障间隔时间,MTTR=平均修复时间
串联系统可靠性
R系统 = R1 × R2 × ... × Rn
并联系统可靠性
R系统 = 1 - (1-R1) × (1-R2) × ... × (1-Rn)
🎯 记忆口诀
架构质量属性
性可安可可互
性能、可用性、安全性、可修改性、可测试性、互操作性
设计模式分类
创结行
创建型(5种)、结构型(7种)、行为型(11种)
分布式理论
CAP BASE
一致性可用性分区容错性,基本可用软状态最终一致
架构风格
分管事仓解
分层、管道过滤器、事件驱动、仓库、解释器
4+1视图模型
逻进开物用
逻辑视图、进程视图、开发视图、物理视图、用例视图
微服务特征
小业去故技
小型服务、业务能力、去中心化、故障隔离、技术多样性
📚 学习建议
学习路径
基础理论
掌握架构基本概念和理论
设计模式
熟练掌握23种设计模式
架构实践
结合实际项目进行架构设计
综合应用
案例分析和论文写作训练
备考策略
时间分配
- • 理论学习:40%
- • 练习题目:30%
- • 案例分析:20%
- • 论文写作:10%
重点内容
- • 系统架构设计方法
- • 软件架构模式和风格
- • 分布式系统架构
- • 质量属性和架构评估
🔒 安全架构详解
安全架构核心要素
安全架构层次模型
威胁分析矩阵
防御深度
网络层
防火墙、IDS/IPS、网络隔离
应用层
WAF、输入验证、会话管理
数据层
加密存储、访问控制、备份
零信任架构
核心原则
- • 永不信任,始终验证
- • 最小权限原则
- • 持续监控验证
实施要点
- • 身份验证中心化
- • 微分段网络
- • 端到端加密
安全开发生命周期
设计阶段
威胁建模、安全需求分析
开发阶段
安全编码、代码审查
测试阶段
渗透测试、漏洞扫描
OWASP Top 10 威胁与防护
| 威胁类型 | 描述 | 防护措施 | 风险等级 |
|---|---|---|---|
| 注入攻击 | SQL注入、NoSQL注入等 | 参数化查询、输入验证 | 高 |
| 身份验证失效 | 弱密码、会话管理缺陷 | 多因子认证、强密码策略 | 高 |
| 敏感数据泄露 | 数据传输和存储不安全 | 加密传输、加密存储 | 中 |
| XXE攻击 | XML外部实体注入 | 禁用外部实体、输入验证 | 中 |
| 访问控制失效 | 权限提升、未授权访问 | RBAC、最小权限原则 | 高 |
⚡ 性能架构详解
性能优化核心策略
性能指标监控
响应时间分布
多级缓存架构
浏览器缓存
HTTP缓存、本地存储
CDN缓存
边缘节点、静态资源
应用缓存
Redis、Memcached
数据库缓存
查询缓存、缓冲池
负载均衡策略
轮询算法
- • 简单轮询
- • 加权轮询
- • 最少连接
哈希算法
- • IP哈希
- • 一致性哈希
- • 会话保持
数据库优化
索引优化
B+树索引、复合索引
查询优化
执行计划、SQL重写
分库分表
水平分片、垂直分片
性能测试类型与工具
负载测试
正常负载下的性能表现
压力测试
超负荷情况下的稳定性
容量测试
系统最大处理能力
稳定性测试
长时间运行的稳定性
性能优化最佳实践
前端优化
- • 资源压缩和合并
- • 图片懒加载
- • 代码分割
- • 浏览器缓存
后端优化
- • 数据库连接池
- • 异步处理
- • 缓存策略
- • 代码优化
架构优化
- • 微服务拆分
- • 读写分离
- • 消息队列
- • 容器化部署
📊 架构对比分析
架构模式对比
技术栈适用性分析
🎯 交互式学习路径
选择您的学习路径
初学者路径
从基础概念开始,循序渐进
- • 架构基础理论
- • 设计模式入门
- • 简单案例分析
进阶路径
深入架构设计和实践
- • 分布式系统设计
- • 微服务架构
- • 性能优化实践
专家路径
架构师高级技能
- • 企业级架构设计
- • 架构治理
- • 技术决策与权衡