架构风格:系统术语 + 构建系统规则

  1. 数据流风格:数据单向流动
  • 批处理:原材料一批一批加工,做完一批再下一批。✅简单可靠;❌实时差,不能交互
  • 管道 - 过滤器:管道传数据,过滤器负责加工。✅组件解耦、可复用;❌不支持交互,不能回退
  1. 调用 / 返回风格:主动调用,执行完返回结果
  • 主程序 / 子程序:主流程调用子程序,线性调用。✅简单直观;❌耦合高,难扩展
  • 面向对象:对象互相调用方法,封装数据。✅封装好;❌对象依赖复杂
  • 分层架构:层层调用,下层给上层服务。✅职责清晰;❌跨层麻烦,一层故障容易连锁影响
  1. 独立构件风格:构件独立,互相通信
  • 进程通信:多个独立进程互相发消息调用。✅独立部署;❌通信不稳定,要处理网络异常
  • 事件驱动:发布事件,订阅者响应。✅松耦合,易扩展;❌流程难追踪,调试困难
  1. 虚拟机风格:自定义一套指令解释执行
  • 解释器:翻译自定义脚本 / 指令执行。✅灵活,自定义语法;❌性能低
  • 规则系统:内置业务规则引擎。✅业务规则可动态改;❌规则复杂后难维护
  1. 以数据为中心风格:围绕共享数据存储
  • 数据库:共享库,读写数据表。✅数据统一;❌并发锁冲突
  • 黑板:公共数据区,多个模块读写黑板数据。✅多方共享;❌竞争读写,同步难
  • 超文本:网状链接式数据(网页)。✅灵活跳转;❌不好管控流程

软考架构风格 自测题(5 道单选)

  1. 数据单向依次加工,组件不直接交互,适合大批量离线数据处理,是什么风格? A 调用返回 B 数据流 C 虚拟机 D 以数据为中心

  2. 分层架构、面向对象都属于哪一类架构风格? A 数据流 B 调用 / 返回 C 独立构件 D 虚拟机

  3. 发布消息,感兴趣的组件自动响应,链路难追踪,调试麻烦是? A 事件驱动 B 管道过滤器 C 黑板 D 解释器

  4. 可以自定义脚本语言,动态解析执行,缺点性能较差的是? A 批处理 B 规则系统 / 解释器 C 数据库 D 进程通信

  5. 多个模块读写同一个公共共享存储区,存在并发竞争问题,黑板属于? A 独立构件 B 数据流 C 以数据为中心 D 调用返回

1.B 2.B 3.A 4.B 5.C

架构风格 易混淆坑题(单选 5 道)

  1. 【坑】将数据分成块,沿着管道传递,过滤器各自独立处理,不共享状态,该架构风格是() A 批处理 B 管道 - 过滤器 C 黑板 D 事件驱动

  2. 【坑】属于调用 / 返回风格,把系统划分多层,上层只能依赖下层,职责分离,指() A 进程通信 B 分层架构 C 黑板 D 规则系统

  3. 【坑】多个独立程序,通过消息传递互相协作,构件完全独立,属于独立构件风格的是() A 进程通信 B 批处理 C 数据库 D 解释器

  4. 【坑】业务规则不用改代码就能动态调整,但是规则复杂后很难维护,属于虚拟机风格() A 超文本 B 规则系统 C 管道过滤器 D 面向对象

  5. 【坑】网状关联数据,点击链接跳转,属于以数据为中心风格的() A 黑板 B 数据库 C 超文本 D 事件驱动

1.B 2.B 3.A 4.B 5.C

软考架构风格 简答题(背诵默写)

适合系统架构设计师

  1. 简述数据流风格,包含两类子风格及其特点。

<details> <summary>参考答案</summary> 数据流风格:数据单向流转加工。 ①批处理:批量数据依次处理,一批完成再处理下一批;优点简单稳定,缺点实时性差。 ②管道-过滤器:管道传输数据,过滤器独立处理;组件解耦可复用,缺点不支持交互,无法回退。 </details>

  1. 简述调用 / 返回风格,包含三类子风格及其特点。

<details> <summary>参考答案</summary> 调用/返回:构件主动调用,调用完成返回结果。 ①主程序/子程序:主流程调用子程序,线性执行;简单直观,耦合高。 ②面向对象:对象封装数据,通过方法互相调用;封装性好,依赖关系容易复杂。 ③分层架构:分层组织,上层依赖下层;职责清晰,一层故障容易连锁影响。 </details>

  1. 简述独立构件风格,包含两类子风格及其特点。

<details> <summary>参考答案</summary> 独立构件:构件相互独立,依靠消息通信协作。 ①进程通信:多个独立进程之间消息交互;构件独立部署,需要处理通信异常。 ②事件驱动:发布事件,订阅组件响应;松耦合易扩展,缺点调用链路难追踪,调试困难。 </details>

  1. 简述虚拟机风格,包含两类子风格及其特点。

<details> <summary>参考答案</summary> 虚拟机:构建虚拟执行环境,解析自定义指令。 ①解释器:解析自定义脚本指令;灵活支持自定义语法,性能较差。 ②规则系统:业务规则引擎;业务规则可动态修改,规则复杂后难以维护。 </details>

  1. 简述以数据为中心风格,包含三类子风格及其特点。

<details> <summary>参考答案</summary> 以数据为中心:围绕共享公共数据存储。 ①数据库:共享数据表;数据统一管理,存在并发争抢冲突。 ②黑板:公共数据区域,多个模块读写;支持多方共享,读写同步困难。 ③超文本:网状链接数据,支持跳转;数据跳转灵活,业务流程不好管控。 </details>


可选简答(拔高真题风格)6. 对比事件驱动架构和管道 - 过滤器架构的优缺点。

<details> <summary>参考答案</summary> 管道过滤器:数据单向流,组件解耦;但是缺少交互,流程固定。 事件驱动:基于事件广播,松耦合、易扩展;但是调用链路不直观,排查问题难度大。 </details>

相关推荐
mldong8 小时前
同一个节点接力办几轮,流程才往下走:jeeflow 的后加签
后端·架构
Decay__16 小时前
18_MySQL 智能巡检方案 —— 巡检项清单 / 一键巡检脚本 / 健康评分
运维·数据库·sql·mysql·架构
天远API20 小时前
零信任架构实战:基于天远运营商三要素详版V即时版构建自动化消费电子大促电商平台高价值权益秒杀与优惠券防羊毛高并发实名核验网关
运维·人工智能·架构·自动化
这个DBA有点耶1 天前
信创场景下数据同步软件怎么选?对比开源CDC与原生闭环工具的结构性差异
数据库·mysql·架构
衡石科技1 天前
衡石高性能分析架构:HQL、查询下推与多层加速的协同设计
架构·数据分析
Tokenfree1 天前
换模型也要灰度:10% → 50% → 100%,每一档只看三个指标
架构
vivo互联网技术1 天前
把 Agent 的判断与行动变成可恢复的软件事实|KDC 系列 工程篇
架构·agent·ai编程
用户094248568031 天前
第19章:库存扣减与秒杀系统:Redis 扛峰值流量
redis·架构·源码
leo在掘金1 天前
2.8万亿MoE跑昇腾:0 Day适配改了啥
后端·架构
广凌科技1 天前
广凌校园物联网中台整体解决方案:三层架构驱动校园数字化智治
物联网·架构