System_Architect:最容易掉坑的20个易混淆知识点清单(对称/非对称加密、SAAM/ATAM等附解析)
【免费下载链接】System_Architect🐍 2024年软考 (杭州e类+租房补贴)系统架构设计师资料整理复习(软考高级) 二战 20天备考通过🎉🎉🎉2024年5月份的上半年系统架构师(压线过 52/46/45) 语雀文章总结体验 https://www.yuque.com/hakusai/el7lwd项目地址: https://gitcode.com/gh_mirrors/syst/System_Architect
正在备考 2024 年软考高级「系统架构设计师」的朋友注意了!本文基于开源项目 System_Architect 整理的历年真题备考资料,一次性梳理出选择题中最容易掉坑的20 个易混淆知识点清单——从对称加密/非对称加密、SAAM/ATAM 架构评估方法,到 MTTF/MTBF 可靠性指标、数据仓库与数据湖等,全部附对比解析,帮你避开那些"看着都会、一考就错"的经典陷阱。
项目作者两次备考、2024 年二战以 52/45/45 压线通过,资料里沉淀了大量踩坑经验。核心参考文件(位于仓库「23年软考系统架构师备考资料」目录下):
- 《23年架构师易混淆知识点精简版_20.docx》——本文清单的主要来源
- 《2023年11月系统架构设计师易混淆知识点.docx / .pdf》——完整版对照
- 《2023年11月架构设计师重要知识点100条.pdf》
- 《系统架构师错题集.docx》
下面按考试章节分组,逐条拆解。
考什么?先看懂系统架构师知识结构
软考高级系统架构设计师的考查范围横跨软件、硬件、网络、法律四大维度,选择题最容易在"两个相似概念的边界"上设坑。下面这张知识结构图帮你先建立全局坐标,再看下面的易混淆清单才不迷路:
系统架构设计师考试知识结构思维导图/思维导图/1-知识结构.png)
💡 备考建议:先用思维导图定位考点章节,再精读对应易混淆知识点,最后用真题验证。
一、系统安全类(每年必考 2~3 分)
1. 对称加密 vs 非对称加密 🔐
这是安全题最高频的"双生陷阱",每年几乎都考:
| 对比项 | 对称加密 | 非对称加密 |
|---|---|---|
| 密钥 | 加密/解密用同一把密钥 | 公钥加密、私钥解密,两把密钥 |
| 速度 | 快,适合大数据量 | 慢,适合密钥交换/签名 |
| 典型算法 | DES、3DES、AES、国密SM4 | RSA、ECC、国密SM2 |
| 密钥管理 | 困难(n 用户需要 n(n-1)/2 把密钥) | 简单(公钥公开分发) |
一句话记忆:实际系统(如 HTTPS)是"非对称交换对称密钥 + 对称加密传输数据"的混合模式——这正是出题人最爱的陷阱选项。
2. 被动攻击 vs 主动攻击
- 被动攻击(只窃听、不改动,破坏保密性):窃听(网络监听)、业务流分析、部分资料将非法登录归入此类
- 主动攻击(篡改数据流):假冒身份、抵赖、重放攻击(加时间戳可防范)、拒绝服务 DoS(破坏可用性)、篡改(破坏完整性)、伪造(破坏真实性)
记忆口诀:被动"只看不摸",主动"又看又摸"。
系统架构设计师信息安全技术基础知识思维导图/思维导图/16-信息安全技术%20基础知识.png)
二、软件架构设计类(选择题 + 案例双料高频)
3. SAAM vs ATAM(架构评估方法)
架构评估是 2016、2019 年论文原题,也是选择题常客:
| 对比项 | SAAM(软件架构分析法) | ATAM(架构权衡分析法) |
|---|---|---|
| 地位 | 最早的架构评估方法 | SAAM 的改进,业界主流 |
| 关注点 | 分析可修改性 | 关注多个质量属性的权衡 |
| 输出 | 功能清单、场景排序、修改影响分析 | 效用树、风险点/非风险点、敏感点、权衡点 |
| 特点 | 场景驱动 | 引入质量属性效用树,识别风险与权衡 |
解析:SAAM 是"前辈",ATAM 在 SAAM 基础上引入了效用树和权衡点概念,题目问"能识别质量属性之间权衡的方法"选 ATAM。
4. 风险点 vs 敏感点 vs 权衡点 ⚖️
三个"点"一字之差,年年掉坑:
- 风险点:架构决策中潜在的、存在问题的决策带来的隐患
- 敏感点:为实现某种特定质量属性,一个或多个构件具有的特性(影响单个质量属性)
- 权衡点:影响多个质量属性的特性,是多个质量属性的敏感点(加功能可能降低性能就是典型权衡点)
一句话:敏感点管一个,权衡点管一片,风险点管"坑"。
5. 微服务 vs SOA
| 对比项 | 微服务 | SOA |
|---|---|---|
| 划分方式 | 纵向业务划分,能拆就拆 | 水平分多层,服务能放一起 |
| 粒度 | 细粒度、组件小 | 粗粒度、组件较复杂 |
| 通信 | 轻量级(HTTP/REST/JSON) | 企业服务总线 ESB(WS/SOAP) |
| 集成 | 松散、无集中总线 | 集中式架构 |
| 组织 | 单一团队负责、团队级自底向上 | 按部门分层、企业级自顶向下 |
| 部署 | 服务独立部署 | 相互依赖,部署复杂 |
一句话:微服务像独立子公司,SOA 像大公司里划分的业务单元(BU)。
6. 架构模式 vs 设计模式 vs 惯用法
- 架构模式:软件设计的高层决策(如 C/S、管道-过滤器)
- 设计模式:与具体实现语言无关,关注系统设计(如观察者模式)
- 惯用法:最低层模式,依赖具体编程语言(如 C++ 的引用计数)
解析:层次从高到低是"架构模式 → 设计模式 → 惯用法",题目给出具体语言实现细节时选惯用法。
系统架构设计师软件架构设计思维导图/思维导图/10-架构-1.png)
三、系统可靠性类(公式题重灾区)
7. 可靠性 vs 可用性
这两个词日常混用,考试里定义完全不同:
- 可靠性:规定时间和环境下完成规定功能的能力(无故障运行概率)
- 可用性:某个给定时间点上系统能按需求执行的概率(可运维性维度)
配套必背公式:
- MTTF = 1/λ(λ 为失效率);MTTR = 1/μ(μ 为修复率)
- MTBF = MTTF + MTTR(因 MTTR 很小,通常 MTBF ≈ MTTF)
- 可用性 = MTTF / (MTTF + MTTR) × 100%
陷阱:串联系统可靠性 = 各部件可靠性相乘(越串越低);并联 = 1 - ∏(1-ri)(越并越高)。
8. 恢复块方法 vs N版本程序设计
| 对比项 | 恢复块方法 | N版本程序设计 |
|---|---|---|
| 运行环境 | 单机 | 多机 |
| 错误检测 | 验证测试程序 | 表决 |
| 恢复策略 | 后向恢复 | 前向恢复 |
| 实时性 | 差 | 好 |
一句话:N版本是"多机表决",恢复块是"单块验证、失败回退"。
系统架构设计师可靠性分析与设计思维导图/思维导图/11-可靠性.png)
四、计算机系统类(送分但也最易记混)
9. CISC vs RISC
| 对比项 | CISC 复杂指令集 | RISC 精简指令集 |
|---|---|---|
| 指令 | 数量多、可变长 | 数量少、定长、大部分单周期 |
| 寻址 | 支持多种 | 支持方式少 |
| 实现 | 微程序控制(微码) | 硬布线逻辑、流水线 |
| 访存 | 任意指令可访存 | 仅 Load/Store 访存,寄存器操作 |
一句话:CISC"功能全",RISC"快而精"。
10. 哈佛结构 vs 冯·诺依曼结构
- 冯·诺依曼:程序指令与数据合并存储、共用总线 → 多用于 PC 处理器(如 i3/i5/i7)
- 哈佛:程序与数据分开存储、独立编址、4 条总线,可并行读取、吞吐率高 → 多用于嵌入式 DSP
一句话:PC 选冯·诺依曼,嵌入式 DSP 选哈佛。
11. Cache 三种映射方式
- 直接相联:硬件简单,但冲突率高
- 全相联:冲突率低,但电路难实现,只适用小容量cache
- 组相联:直接相联与全相联的折中(实际主流)
12. I/O 三种传输控制方式
按效率从低到高:程序查询(CPU 一直忙等,利用率最低)→ 中断方式(CPU 与 I/O 并行)→ DMA(CPU 只做初始化,不参与数据传输,最高效)。
五、数据库系统类
13. 数据仓库 vs 数据湖 🏞️
| 对比项 | 数据仓库 | 数据湖 |
|---|---|---|
| 数据 | 清洗过的结构化数据 | 原始数据,含半结构化 |
| 模式 | 存前定义模式,价值提前明确 | 存后定义模式,价值尚未明确 |
| 存取 | 标准 SQL 接口 | 应用程序、类 SQL 程序 |
| 能力 | 仅支持分析处理 | 既支持分析也支持事务处理 |
一句话:仓库"先加工再入库",数据湖"先囤起来再说"。
14. 候选码、主码、外码、全码
- 候选码:能唯一标识元组且不含多余属性的属性(组),可多个
- 主码:从候选码中任选一个作主键
- 外码:本关系不是主码(或只是部分),但是另一个关系的主码
- 全码:所有属性共同组成候选码
陷阱:候选码有多个,主码只有一个;全码是"全体上"的候选码。
15. 热备份 vs 冷备份
- 冷备份(静态):数据库停止状态下复制文件——快速、低维护,但备份期间不能服务
- 热备份(动态):数据库运行状态下备份——业务不停、可秒级恢复到时间点,但不能出错,失败则不可用于时间点恢复
16. 分区 vs 分表
- 分表:真正生成多张物理小表(数据均衡)
- 分区:不生成新表,还是一张表,只是把数据分摊到不同硬盘/服务器
一句话:分区"逻辑分",分表"物理分"。
六、软件工程类
17. 逆向工程、正向工程、再工程、设计恢复
- 逆向工程:从已有程序中恢复设计信息(实现级/结构级/功能级/领域级四个层次)
- 设计恢复:借助工具从程序中抽象出数据设计、总体结构设计等信息(逆向工程的一部分)
- 再工程= 逆向工程 + 新需求考虑 +正向工程,是对现有系统产生新版本的重开发过程
- 正向工程:利用恢复的信息改变或重构系统,改善整体质量
记忆:逆向"往回挖",正向"向前建",再工程 = 逆向 + 正向一条龙。
18. 系统维护四种类型 🛠️
| 类型 | 干什么 | 记忆 |
|---|---|---|
| 正确性维护 | 改正开发期已发生、测试未发现的错误 | 修 bug |
| 适应性维护 | 适应信息技术/管理需求变化 | 换环境 |
| 完善性维护 | 扩充功能、改善性能 | 加功能(占比最大) |
| 预防性维护 | 主动增强可靠性/可维护性,适应未来变化 | 打预防针 |
19. QFD 需求三分类
质量功能部署(QFD)把用户要求转化为软件需求,分三类:
- 常规需求(基本需求):用户认为系统应该做到,做得越多越满意
- 期望需求:用户想当然认为应有,但不实现就不满意(不能明确描述)
- 兴奋需求(意外需求):范围外功能,实现了更高兴,不实现不影响购买决策
七、项目管理类
20. PERT 图 vs Gantt 图
- PERT 图:图形化网络模型,节点表示任务,主要描述任务间的依赖关系(含松弛时间)
- Gantt 图:水平条形图,横轴时间纵轴任务,主要描述任务间的重叠关系,直观展示进度
一句话:PERT 看"谁依赖谁",Gantt 看"谁和谁并行"。
同考点顺带记:质量保证(QA)是定期质量审计与过程分析;质量控制(QC)是实时监控具体结果是否符合标准——QC 的结果是 QA 的审计对象,QA 的成果又指导下阶段 QC 与改进。
复习路线:20 个坑,7 天填完 🎯
结合项目作者 20 天备考二战通过的实战路线,推荐这样消化这份清单:
- 第 1~2 天:对着知识结构图通读「23年架构师易混淆知识点精简版_20.docx」,把 20 个"vs"做成自己的对比表
- 第 3~4 天:精读章节分类真题(「真题/章节分类真题及解析」目录按章分好了),重点刷安全、架构评估、可靠性三个章节
- 第 5~6 天:用《2023年11月架构设计师重要知识点100条.pdf》查漏补缺,结合《系统架构师错题集.docx》模式记录自己的错题
- 第 7 天:背公式(MTTF/MTTR/流水线执行时间)+ 过一遍《23年架构师考前几页纸.docx》
📌 最后提醒:作者的经验之谈——"有些东西考得很广,复习资料里没见过的直接靠感觉走也没关系,但易混淆点必须死磕",因为它们是选择题里唯一能稳定拿回的分数。祝一次上岸!
【免费下载链接】System_Architect🐍 2024年软考 (杭州e类+租房补贴)系统架构设计师资料整理复习(软考高级) 二战 20天备考通过🎉🎉🎉2024年5月份的上半年系统架构师(压线过 52/46/45) 语雀文章总结体验 https://www.yuque.com/hakusai/el7lwd项目地址: https://gitcode.com/gh_mirrors/syst/System_Architect
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考