【系统架构师】-论文考点整理
1、软件架构风格
1.1、概述
1、软件架构为软件系统提供了一个结构、行为和属性的高级抽象。
2、软件架构风格是特定应用领域的惯用模式,架构定义一个词汇表和一组约束。
1.2、作用
1、软件架构是项目干系人进行交流的手段。
2、软件架构是可传递和可复用的模型,通过研究软件架构可能预测软件的质量。
3、软件架构使推理和控制的更改更加简单,有助于循序渐进的原型设计,可以作为培训的基础。
1.3、视角与视图


参考 【系统架构师】-软件架构设计-CSDN博客
2、系统可靠性分析与设计
2.1、定义
系统在规定的时间内及规定的环境条件下,完成规定功能的能力,就是系统无故障运行的概率。
2.2、4个子特性
成熟性、容错性、易恢复性、依从性
2.3、提高系统可靠性技术
(1)冗余技术;
(2)软件容错技术;
(3)双机容错技术;
(4)集群技术。
2.4、正文概述
在架构设计期间,可靠性的要求是较为明确的,系统的核心模块运行可靠性要有保障。因此我们回顾主流的软件可靠性设计技术:
(1)容错设计技术:是应用程序所运行的软件或硬件中发生的错误并从错误中恢复所采用的设计技术,主要包括:恢复块设计、N 版本程序设计、冗余设计、卫防式程序设计等,它的设计要求,要有错误自我修复的能力;
(2) 检错技术: 是建立软件系统查错机制,对程序中模块进行监控,旦超过设定的闹值或检测到错误发出报警通知负责人处理错误,主要包括:漏洞扫描、记录日志等,它的设计要求,要有系统监控与预警错误的能力;
(3) 降低复杂度设计: 通过简化软件结构,缩短程序代码,优化软件数据流向,降低软件复杂度,从而提高软件可靠性,它的设计要求,系统的程序实现是简单的、尽量降低复杂程度。
在回顾了主流的软件可靠性设计之后,我们重点的分析了核心功能可靠性设计要求,例如:资源搜索、资源预览、资源下载、扫码支付等这些核心功能,要有错误的修复能力,因此决定采用容错设计技术实现这些功能运行可靠性。另外,要实现系统的错误预警处理,能够对系统出现的异常、错误进行收集与处理,因此决定采用检错技术实现系统监控。
参考 【系统架构师】-系统可靠性分析与设计_可靠性计算 mttf-CSDN博客
3、系统安全性与保密性设计
3.1、概述
指系统在向合法用户提供服务的同时能够阻止非授权用户使用的企图或拒绝服务的能力。
安全性又可划分为机密性[信息不泄露给未授权的用户] 、完整性[防止信息被篡改] 、不可否认性[不可抵赖] 及可控性[对信息的传播及内容具有控制的能力] 等特性。
3.2、战术
| 抵抗攻击 | 通过各种技术手段和策略减少系统遭受攻击的可能性 | 使用加密技术保护数据,实施访问控制 |
| 检测攻击 | 识别正在进行或已经发生的攻击,以便及时采取响应措施 | 安装入侵检测系统(IDS),日志分析 |
| 从攻击中恢复 | 在系统遭受攻击后,恢复系统的正常运行状态 | 数据备份和恢复方案,错误隔离和修复 |
3.3、四大分类
信息安全:预警、保护、检测、响应、恢复和反击
网络安全:认证鉴别、访问控制。机密性(密钥)、完整性、抗抵赖性
数据库安全:实体、参照、自定义完整性约束
系统安全:系统架构的脆弱性
1、软件设计的瑕疵
2、软件实现中的弱点
3、软甲本身的瑕疵
4、系统和网络的错误配置

参考:【系统架构师】-第18章-安全架构设计-CSDN博客
4、微服务架构
4.1、概述
微服务架构是一种新型的架构模式,将一个大型的单个应用或服务拆分成多个微服务,每个服务运行在其独立的进程内,服务之间相互协调,互相配置,为用户提供最终的价值。
4.2、优势及挑战
基于微服务的系统包含以下优势:
(1)复杂应用解耦。微服务架构将单一模块应用分解为多个微服务,同时保持总体功能不变。(2)独立。微服务在系统软件生命周期中是独立开发、测试及部署的。
(3)技术选型灵活。每个开发团队可根据自身应用的业务需求发展状况选择合适的体系架构与技术。
(4)容错。故障会被隔离在单个服务中。
(5)松耦合,易扩展。
基于微服务的系统带来的挑战:
(1)分布式特性。分布式系统的编程难度更大,因为远程调用慢,而且总存在失败的风险;
(2)最终一致性。分布式系统的强一致性很难,开发人员需要处理最终一致性的问题;
(3)运维复杂性:需要成熟的运维团队,管理很多需要重新部署的服务。
5、企业集成架构
1)数据集成:数据集成是一种白盒集成,集成点位于中间件处,需要考虑各集成子系统的数据流向,并将各个子系统有机结合起来,主要包含基于中间件技术的集成架构;
2)表现集成:是一种黑盒集成,即将各个界面子系统集成在一起,无需考虑各个子系统内部的具体数据流向
3)控制集成:也被称为应用集成,是一种黑盒集成,并且集成点位于程序代码中,用户仅需要对各子系统进行简单的API函数调用,主要包括基于API函数的集成架构。
参考 软考高级之系统架构师之企业应用集成EAI_企业应用集成 表示 控制 数据-CSDN博客
6、基于架构的软件设计ABSD、SAAM、ATAM
6.1、基于场景的评估方式分类
架构权衡分析法 ATAM(质量属性)、软件架构分析法 SAAM 、成本效益分析法 CBAM。
6.2、ATAM
基于SAAM,主要针对性能、实用性、安全性、可修改性。对这些质量属性评价和折中
过程
描述和介绍阶段:描述ATAM方法,描述业务动机,描述架构
调查和分析阶段:确定架构方法,生成质量属性效用树,分析架构方法
测试阶段:讨论场景和对场景分级,分析架构方法
最终阶段:描述评估结果

参考 【系统架构师】-软件架构评估_架构师如何评估一个系统-CSDN博客
7、设计模式
8、质量属性设计
相关文章:
【系统架构师】-论文考点整理
1、软件架构风格 1.1、概述 1、软件架构为软件系统提供了一个结构、行为和属性的高级抽象。 2、软件架构风格是特定应用领域的惯用模式,架构定义一个词汇表和一组约束。 1.2、作用 1、软件架构是项目干系人进行交流的手段。 2、软件架构是可传递和可复用的模型&…...
Android Activity 设计详解
文章目录 Android Activity 设计说明1. Activity 的生命周期2. Activity 的启动模式3. Activity 的通信4. Activity 的布局和视图管理5. Activity 的配置变化处理6. Activity 的保存和恢复状态7. Activity 的任务和返回栈 总结 Android Activity 设计说明 在 Android 中&#…...
国家开放大学,javaScript程序设计-形考任务-实训五:设计登录和注册页|实训六:设计简单的购物车
实训五:设计登录和注册页 1. 题目 设计登录和注册页。 2. 目的 (1)掌握表单域的引用方法。 (2)掌握常用控件的基本方法。 (3)掌握事件的处理方法。 (4)理解Cookie…...
微服务可用性之隔离
摘要 本文主要微服务场景下服务的可用性保障之隔离。隔离又分为几种情况,动静隔离、读写隔离、热点隔离、资源隔离等场景。 为什么要隔离 本质上是对资源进行分割确保在出现故障的时候服务只是部分不可用,不至于系统陷入整体性瘫痪,…...
设计模式——概述
1.设计模式定义 设计模式是软件设计中常见问题的典型解决方案,可用于解决代码中反复出现的设计问题。设计模式的出现可以让我们站在前人的肩膀上,通过一些成熟的设计方案来指导新项目的开发和设计,以便于我们开发出具有更好的灵活性和可扩展性&#…...
#P0564. 数组元素查找升级版
问题描述 给你 n 个数,再给你一个数 k,查找 k 在这 n 个数中第一次出现的位置(从 0 开始计数),不存在输出 No。 输入 多组测试数据,对于每组测试数据: 第一行输入一个整数 n (1 ≤ n ≤ 100…...
如何修改WordPress网站的域名
我的网站用的是Hostease的虚拟主机,但是域名是之前在其他平台买的,而且已经快到期了,因为主机和域名在不同的平台上,管理不太方便,所以我又在Hostease重新注册了一个域名,然后把网站换成了新的域名…...
python爬虫[简易版]
python爬数据[简易版] 对于每个网站的爬的原理基本是一样的,但是具体的代码写法的区别就在于爬的数据中解析出想要的数据格式: 以爬取有道词典中的图片为例: 第一步:打开网站,分析图片的数据源来自哪里, https://dict-subsidiary.youdao.com/home/content?invalid&pre…...
128天的创意之旅:从初心到成就,我的博客创作纪念日回顾
文章目录 🚀机缘:初心的种子——回望创作之旅的启航🌈收获:成长的果实——128天创作之旅的宝贵馈赠❤️日常:创作与生活的交织👊成就:代码的艺术🚲憧憬:未来的蓝图 &…...
前端绘制流程节点数据
根据数据结构和节点的层级、子节点id,前端自己绘制节点位置和关联关系、指向、已完成节点等 <template><div><div>通过后端节点和层级,绘制出节点以及关联关系等</div><div class"container" ref"container&…...
2024年顶级算法-黑翅鸢优化算法(BKA)-详细原理(附matlab代码)
黑翅鸢是一种上半身蓝灰色,下半身白色的小型鸟类。它们的显著特征包括迁徙和捕食行为。它们以小型哺乳动物、爬行动物、鸟类和昆虫为食,具有很强的悬停能力,能够取得非凡的狩猎成功。受其狩猎技能和迁徙习惯的启发,该算法作者建立…...
Linux 内核开发 28 内核模块文件ko文件介绍
Linux 内核开发 28 内核模块文件ko文件介绍 1. ELF格式简介 内核模块文件ko文件,格式为elf格式, ELF(Executable and Linkable Format)可执行链接格式,是一种用于存储可执行程序、目标代码、共享库和内核模块的标准文件…...
DDR5—新手入门学习(一)【1-5】
目录 1、DDR背景 (1)SDR SDRAM时代 : (2)DDR SDRAM的创新 : (3)DDR技术的演进 : (4)需求推动: 2、了解内存 (1&…...
力扣HOT100 - 138. 随机链表的复制
解题思路: class Solution {public Node copyRandomList(Node head) {if(headnull) return null;Node p head;//第一步,在每个原节点后面创建一个新节点//1->1->2->2->3->3while(p!null) {Node newNode new Node(p.val);newNode.next …...
深入分析 Android Activity (五)
深入分析 Android Activity (五) 1. Activity 的进程和线程模型 在 Android 中,Activity 默认在主线程(也称为 UI 线程)中运行。理解进程和线程模型对于开发响应迅速且无阻塞的应用程序至关重要。 1.1 主线程与 UI 操作 所有 UI 操作必须…...
Kubernetes 应用滚动更新
Kubernetes 应用版本号 在 Kubernetes 里,版本更新使用的不是 API 对象,而是两个命令:kubectl apply 和 kubectl rollout,当然它们也要搭配部署应用所需要的 Deployment、DaemonSet 等 YAML 文件。 在 Kubernetes 里应用都是以 …...
五分钟”手撕“图书管理系统
前言: 图书馆管理系统需要结合JavaSE的绝大部分知识,是一个很好的训练项目。 为了让大家更加方便的查阅与学习,我把代码放开头,供大家查询。 还有对代码的分析,我将以类为单位分开讲解。 目录 全部代码 Main类 Us…...
8个实用网站和软件,收藏起来一定不后悔~
整理了8个日常生活中经常能用得到的网站和软件,收藏起来一定不会后悔~ 1.ZLibrary zh.zlibrary-be.se/这个网站收录了超千万的书籍和文章资源,国内外的各种电子书资源都可以在这里搜索,98%以上都可以在网站内找到,并且支持免费下…...
电商内卷时代,视频号小店凭借一己之力“脱颖而出”
大家好,我是电商笨笨熊 今年618各大电商平台花样百出; 某宝更是直接取消了“预售”,从5月就开始进入618预热期; 不少玩家既开心又难过,市场如此内卷,618确实是个爆发期,但更多的需要不断压低…...
【论文笔记】| 定制化生成PuLID
PuLID: Pure and Lightning ID Customization via Contrastive Alignment ByteDance, arXiv:2404.16022v1 Theme: Customized generation 原文链接:https://arxiv.org/pdf/2404.16022 Main Work 提出了 Pure 和 Lightning ID 定制 (PuLID),这是一种用于…...
iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘
美国西海岸的夏天,再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至,这不仅是开发者的盛宴,更是全球数亿苹果用户翘首以盼的科技春晚。今年,苹果依旧为我们带来了全家桶式的系统更新,包括 iOS 26、iPadOS 26…...
工业安全零事故的智能守护者:一体化AI智能安防平台
前言: 通过AI视觉技术,为船厂提供全面的安全监控解决方案,涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面,能够实现对应负责人反馈机制,并最终实现数据的统计报表。提升船厂…...
解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错
出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...
2023赣州旅游投资集团
单选题 1.“不登高山,不知天之高也;不临深溪,不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...
springboot整合VUE之在线教育管理系统简介
可以学习到的技能 学会常用技术栈的使用 独立开发项目 学会前端的开发流程 学会后端的开发流程 学会数据库的设计 学会前后端接口调用方式 学会多模块之间的关联 学会数据的处理 适用人群 在校学生,小白用户,想学习知识的 有点基础,想要通过项…...
JavaScript 数据类型详解
JavaScript 数据类型详解 JavaScript 数据类型分为 原始类型(Primitive) 和 对象类型(Object) 两大类,共 8 种(ES11): 一、原始类型(7种) 1. undefined 定…...
多模态图像修复系统:基于深度学习的图片修复实现
多模态图像修复系统:基于深度学习的图片修复实现 1. 系统概述 本系统使用多模态大模型(Stable Diffusion Inpainting)实现图像修复功能,结合文本描述和图片输入,对指定区域进行内容修复。系统包含完整的数据处理、模型训练、推理部署流程。 import torch import numpy …...
NPOI Excel用OLE对象的形式插入文件附件以及插入图片
static void Main(string[] args) {XlsWithObjData();Console.WriteLine("输出完成"); }static void XlsWithObjData() {// 创建工作簿和单元格,只有HSSFWorkbook,XSSFWorkbook不可以HSSFWorkbook workbook new HSSFWorkbook();HSSFSheet sheet (HSSFSheet)workboo…...
解读《网络安全法》最新修订,把握网络安全新趋势
《网络安全法》自2017年施行以来,在维护网络空间安全方面发挥了重要作用。但随着网络环境的日益复杂,网络攻击、数据泄露等事件频发,现行法律已难以完全适应新的风险挑战。 2025年3月28日,国家网信办会同相关部门起草了《网络安全…...
嵌入式常见 CPU 架构
架构类型架构厂商芯片厂商典型芯片特点与应用场景PICRISC (8/16 位)MicrochipMicrochipPIC16F877A、PIC18F4550简化指令集,单周期执行;低功耗、CIP 独立外设;用于家电、小电机控制、安防面板等嵌入式场景8051CISC (8 位)Intel(原始…...

