首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏闲余说

    架构设计 4-高可用架构之FMEA方法

    导读:《架构设计》系列为极客时间李运华老师《从0开始学架构》课程笔记。本文为第三部分,主要介绍 FMEA 方法,以及如何将 FMEA 方法应用于架构设计之中以提高服务可用性。 什么是FMEA FMEA(Failure mode and effects analysis,故障模式与影响分析)又称为失效模式与后果分析、失效模式与效应分析、故障模式与后果分析等 在架构设计领域,FMEA 的具体分析方法 给出初始的架构设计图 假设架构中某个部件发生故障 分析此故障对系统功能造成的影响 根据分析结果,判断架构是否需要进行优化 FMEA 分析表 功能点 当前的 FMEA 分析涉及的功能点, 个人理解 FMEA 方法是一种分析问题的方法,一共列出了 11 个点,我们在分析架构问题的时候,按照每个点逐一去适配、分析。 reference 从 0 开始学架构

    1K40编辑于 2022-08-19
  • 企业架构规划设计-4A架构之间的关系和集成

    今天我准备再录一个视频来讲解一下企业架构规划设计中的4A架构之间的关系和集成。 我昨天分享过一个视频,就有朋友给我留言说有些内容看不懂,因为我讲的很多视频它是需要有一定前导知识的,类似于我今天讲4A架构集成,那你至少应该对企业架构,对TOGAF,对企业架构规划的元模型有大概的一些了解 我们常说的4A架构就是业务架构、数据架构、应用架构和技术架构,其实去理解4A架构的集成核心,你仍然要去参考企业架构这本书里面谈到的企业架构元模型。 业务架构到应用架构集成 我们刚才讲到了,在业务建模里面会拆分出业务对象、业务活动、业务规则、业务角色这4个核心的要素。这4个核心的要素我们去详细考虑it实现的时候,一定会映射到它相关的应用功能。 所以说物理模型最终落地落地到我的数据库的架构设计底层存储上面,所以说基于这个图我们就能够更加清楚业务架构、数据架构、应用架构和技术架构之间的关联和映射关系。

    73100编辑于 2025-06-24
  • 来自专栏Java进阶架构师

    架构技术专题】什么是架构设计的五个核心指标?如何设计?(4)

    老规矩,收藏加关注哈~ 一、性能 性能就是核心要素之一,不然我为什么架构设计?随随便便一个lowlow的系统上线就好了。所以性能优化是很多小公司卖不去过的坎。 (4)衡量网站性能的指标(重要的有响应时间、TPS、系统性能计数器等,通过这些指标以确定系统设计是否达到目标) 响应时间。 并发数。 2、安全保护等级 1)用户自主保护级 2)系统审计保护级 3)安全标记保护级 4)结构化保护级 5)访问验证保护级 衡量网站安全架构的标准就是针对现存和潜在的各种攻击和窃密手段,是否有可靠的应对策略。 三、可用性 衡量一个系统架构设计是否满足高可用的目标,就是假设系统中任何一台或者多台服务器宕机时,以及出现各种不可预期的问题时,系统整体是否依然可用。 一般就三个手段、冗余、集群化、分布式。 扩展性依赖于前期良好的架构设计。合理业务逻辑抽象,水平/垂直切割分布式化等等。 网站可扩展架构的主要手段是事件驱动架构和分布式服务。

    2.9K40发布于 2018-08-15
  • 来自专栏小白晋级大师

    分布式系统架构4:容错设计模式

    这是小卷对分布式系统架构学习的第4篇文章,虽然知道大家都不喜欢看纯技术文章,写了也没多少阅读量,但是为了个人要成长,小卷最近每天都会更新分布式的文章1.概念容错策略,指的是“面对故障,我们该做些什么”; 而容错设计模式,指的是“要实现某种容错策略,我们该如何去做”。 上一篇已经讲了7种容错策略,为了实现各种策略,开发总结了一些容错设计模式,包括微服务常见的:断路器模式、舱壁隔离模式、超时重试模式。 4.重试模式概念:适用于解决系统的瞬间故障,如:网络抖动、服务临时过载问题。通过设定调用超时时间和重试次数,在调用失败后自动重试,提升服务调用成功率。 使用重试模式时,实现很简单,需避免滥用,适用场景的条件:只在主路关键服务上进行同步重试仅瞬间故障引起的失败进行重试仅对幂等性服务进行重试重试需要有明确终止条件5.容错设计模式对比模式

    53910编辑于 2024-12-20
  • 来自专栏智能时刻

    「软件架构」InfoQ 软件架构设计趋势报告2020年4

    针对分布式系统、事件驱动架构和大数据,软件架构的最新创新希望利用正在出现的最佳实践,并帮助指导工程师远离常见的陷阱。 InfoQ软件架构设计主题图强调了主要的软件架构概念及其在业界的应用现状。 InfoQ负责软件架构设计(A&D)的编辑定期讨论主题图的状态,确定我们应该涵盖的任何新趋势,并注意到在采用图中已有项目方面的任何重大变化。 本次讨论的参与者包括: InfoQ主编Charles Humble InfoQ新闻经理Daniel Bryant Thomas Betts,InfoQ架构设计主编 Jan Stenberg,InfoQ 架构设计编辑 在过去的一年里,我们看到了在A&D领域出现的显著想法,每一个都解决了不同的软件趋势。 Stenberg:低代码让我想起了我年轻的同事,他们在90年代的大学里只教4GL,因为OO已经过时了。 我不认为现代的工作流引擎(如Zebee)属于低代码(但也许它们属于“工作流和决策自动化平台”)。

    1.4K30发布于 2020-05-13
  • 来自专栏EdisonTalk

    5分钟了解系统架构设计4

    最近梳理了之前学习的架构设计相关的一些课程学习总结,将其整理成了一个大纲脑图,以每篇5分钟系列展现出来,希望对你有所帮助。 本篇,我们聚焦架构设计架构拆分的原则。 理解这些原则,可以作为我们做设计和拆分的“道”。 架构设计的原则 (1)合适原则 合适优于业界领先 (2)简单原则 简单优于复杂 (3)演化原则 演化优于一步到位 架构即人性,设计一个符合企业当前情况,又可以演进、不好大喜功的架构,善莫大焉。 (4)回答点评 立足于点:从原有系统中关于订单、促销和报价功能耦合在一起带来的实际问题出发 连接成线:从交易流程的角度做设计串联起三个系统的拆分逻辑是连接成线 扩散成面:从复杂度和成本考量的方向夯实了设计的原则 参考资料 李运华,《从0开始学架构》 刘海丰,《架构设计面试精讲》 潘新宇,《23讲搞定后台架构实战》 作者:周旭龙 出处:https://edisonchou.cnblogs.com 本文版权归作者和博客园共有

    53020编辑于 2023-03-06
  • 来自专栏xingoo, 一个梦想做发明家的程序员

    Log4j官方文档翻译(二、架构设计)

    log4j遵循层次化架构,每个层都有不同的对象来执行不同的任务。这种层次话的结构灵活设计、易于未来的扩展。 log4j框架中有两种对象: 核心对象:框架的支撑对象,是框架必不可少的组成部分。 下面就是log4j的架构组成图: ? 支撑对象,他们在log4j框架中扮演了很关键的角色: level对象:级别对象定义来日志信息的粒度和优先级,有七种级别:OFF,DEBUG,INFO,ERROR,WARN,FATAL和ALL。

    76850发布于 2018-01-17
  • 来自专栏Java进阶架构师

    架构技术专题」架构核心指标之可扩展架构设计的三要素(4

    业界对于可扩展的系统架构设计有一个朴素的理念,就是: 通过加机器就可以解决容量和可用性问题 这一理念在“云计算”概念疯狂流行的今天,得到了广泛的认可! 而许多系统,在架构设计时并未充分考虑到这些问题,导致系统的重构成为常态,从而影响业务交付能力,还浪费人力财力! 在工程上常见的方案是 服务化架构(SOA) 。比如对于一个电子商务平台,我们可以拆分成不同的服务,组成下面这样的架构: ? 但通过观察上图容易发现,当服务数量增多时,服务调用关系变得复杂。 工程领域常见的Z轴扩展有以下两种方案: 1.单元化架构 在分布式服务设计领域,一个单元(Cell)就是满足某个分区所有业务操作的自包含闭环。 总结: 一个在可扩展性上设计良好的系统,会充分考虑三个维度上的可扩展性。

    1K40发布于 2018-08-15
  • 来自专栏木宛城主

    Unity应用架构设计(4)——设计可复用的SubView和SubViewModel(Part 1)

    值得注意的事,当我们设计一个可复用的面向对象组件时,需要保证其独立性,也就是我们熟知的『高内聚,低耦合』原则。 组件化设计的思路 不管是开发客户端应用程序还是开发服务器端应用程序,『组件』这个词我们并不陌生。 所以在Unity 3D 框架设计时,组件化是核心的概念。 那么如何去设计SubView和SubViewModel,我总结出几条原则: 当一个功能被不同的场合频繁用到,建议将这个功能抽象成SubView(SubViewModel) SubView(SubViewModel

    1.4K50发布于 2018-01-11
  • 来自专栏木宛城主

    Unity应用架构设计(4)——设计可复用的SubView和SubViewModel(Part 2)

    在我们设计和开发应用程序时,经常要用到控件。比如开发一个客户端WinForm应用程序时,微软就为我们提供了若干控件,这些控件为我们提供了可被定制的属性和事件。 设计模式并不深奥,很多模式的理念都是相通的,不同的是对应语言下不同的表现形态,善于剖开现象看本质,很多都是相通的。 源代码托管在Github上,点击此了解

    92570发布于 2018-01-11
  • 来自专栏sktj

    Kubernetes(4:架构)

    Master 是cluster 的大脑: 运行 kube-apiserver kube-scheduler kube-controller-manager etcd pod restful api scheduler 调度器Scheduler负责决定将Pod放在哪个Node上运行。Scheduler在调度 时会充分考虑Cluster的拓扑结构,当前各个节点的负载,以及应用对高可用、性能、数据亲和性的需求。 Controller Manager负责管理Cluster各种资源,保证资源处于预期的状态。Controller Manager由多种controller组成,包括replicationcontroller、endpoints controller、namespace controller、serviceaccounts controller等。 etcd负责保存Kubernetes Cluster的配置信息和各种资源的状态信息。当数据发生变化时,etcd会快速地通知Kubernetes相关组件。 Pod要能够相互通信,Kubernetes Cluster必须部署Pod网络,flannel是其中一个可选方案。

    45620发布于 2019-09-24
  • 业务战略驱动的企业架构规划和设计-4A架构落地实践和集成协同

    一、企业架构总论:EA、TOGAF与4A的概念与定位 企业架构规划和设计听起来宏大,但要真正做好,第一步反而是把一组容易混淆的概念厘清楚。 TOGAF、4A与几类架构概念的厘清 TOGAF是被广泛认可的企业架构参考框架,它为架构的规划、设计、实施和治理提供了一套全面方法论,核心是架构开发方法ADM,从架构愿景的定义开始,逐步深入到业务架构、 在我看来,数据架构4A里最特殊的一层——它上承业务建模、下启应用设计,是业务和IT之间真正的衔接点,更是数字化时代数据驱动的根基。 八、新趋势与AI增强:回归业务驱动与价值驱动 前面七章,我们把企业架构规划设计的完整方法论从概念、底层逻辑,到4A各层和集成协同走了一遍。但方法论本身也在持续演进。 结语 写到这里,企业架构规划设计4A架构落地协同的脉络已经基本完整。

    24810编辑于 2026-06-08
  • Kubernetes设计架构

    它的设计架构具有高度的可扩展性和灵活性,能够管理大规模的分布式系统。以下是 Kubernetes 的核心设计架构及其主要组件:1. 4. PodPod 是 Kubernetes 中的最小部署单元,一个 Pod 通常包含一个或多个容器,它们共享网络命名空间和存储卷。

    60510编辑于 2024-08-28
  • 来自专栏Android技术分享

    移动架构-IOC架构设计

    控制反转(Inversion of Control,缩写为IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。 } }); 这里使用注入,其过程比布局和控件注入稍微复杂一点,这是考虑到了扩展性,不能单一使用id完成注解 事件的监听包含事件源,事件和回调,因此其注解就稍微复杂一点,这里设计一个监听各种点击事件的监听

    1.1K41发布于 2019-05-10
  • 来自专栏搜云库技术团队

    架构设计《一》谈谈架构

    1、需求相对复杂. 2、非功能性需求在整个系统占据重要位置. 3、系统生命周期长,有扩展性需求. 4、系统基于组件或者集成的需要. 5、业务流程再造的需要. 2、架构分类 架构可细分为业务架构、应用架构 2、项目模块划分 3、顶层文件结构设计,比如mvc设计4、依赖关系 ? 4、衡量架构的合理性 架构为业务服务,没有最优的架构,只有最合适的架构架构始终以高效,稳定,安全为目标来衡量其合理性。 一、稳定性。 误区4: 为虚无的未来埋单而过度设计 误区5: 埋头干活儿缺乏前瞻性 6、架构知识体系 架构演进 初始阶段:LAMP,部署在一台服务器 应用服务器和数据服务器分离 使用缓存改善性能 使用集群改善并发 数据库地读写分离 4、《分布式服务架构:原理、设计与实战》 这本书全面介绍了分布式服务架构的原理与设计,并结合作者在实施微服务架构过程中的实践经验,总结了保障线上服务健康、可靠的最佳方案,是一本架构级、实战型的重量级著作

    3.3K43发布于 2019-10-17
  • 来自专栏白驹过隙

    架构设计 - Server设计草稿

    架构可依据具体前端需求进行裁剪,灵活配置。 gate用于业务框架分布式部署,在业务量可控范围可取消,做集中控制。

    76720发布于 2018-06-25
  • 来自专栏白驹过隙

    架构设计 - Server设计草稿

    架构可依据具体前端需求进行裁剪,灵活配置。 gate用于业务框架分布式部署,在业务量可控范围可取消,做集中控制。

    907100发布于 2018-05-18
  • 来自专栏数据饕餮

    数据产品设计专题(4)- 程序化交易业务架构模型

    程序化交易业务领域模型 二、核心业务内容解读 (1)一个核心业务流程:流量交易流程; (2)二类用户服务客户端;媒体主服务客户端+广告主服务客户端; (3)三类业务平台;需求方平台+流量交易平台+供应方平台; (4

    71740发布于 2019-01-14
  • 来自专栏IT大咖说

    软件架构设计-软件架构风格、分层架构

    软件架构是可传递可复用的模型,架构就是体系结构。架构设计介于需求分析和软件设计之间。架构设计就是需求分配,即满足,需求的职责分配到组件上。 软件架构设计是降低成本、改进质量、按时和按需交付产品的关键因素。 然而系统架构的给出必须建立在需求明确的基础上。 软件架构能够在设计变更相对容易的阶段,考虑系统结构的可选方案,便于技术人员与非技术人员就软件设计进行交互,能够展现软件的结构、属性与内部交互关系。 但是软件架构与用户对系统的功能性需求没有直接的对应关系。 ◆ 架构的模型 4+1视图 ? 逻辑视图:主要支持系统的功能需求,即系统提供给最终用户的服务。 比如java内存垃圾的回收机制也做成了一种设计模式。 7. 软件架构需求 软件架构需求是指用户对目标软件系统在功能、行为、性能和设计约束等方面的期望。

    3.9K41发布于 2021-07-19
  • 来自专栏全栈程序员必看

    软件架构设计—软件架构概述

    (3)任何软件都存在架构,但不一定有对该架构的具体表述文档。即架构可以独立于架构的描述而存在。如文档已过时,则该文档不能反映架构。 (4)元素及其行为的集合构成架构的内容。 (4架构对开发的指导与规范意义不容忽略。架构作为系统的总体设计,它指导后续的详细设计和编码。架构使基于模板的开发成为可能,有利于开发的规范化和一致性,减少开发与维护成本。 (4)过程模型。过程模型研究构造系统的步骤和过程。因而结构是遵循某些过程脚本的结果。 (5)功能模型。该模型认为架构由一组功能构件按层次组成,且下层向上层提供服务。 例如,Kruchten 在 1995 年提出了一个“4+1”的视图模型。“4+1” 视图模型从 5 个不同的视角包括逻辑视图、进程视图、物理视图、开发视图和场景视图来描述软件架构。 每一个视图只关心系统的一个侧面,5 个视图结合在一起才能反映系统的软件架构的全部内容。“4+1”视图模型如图 9-1 所示。

    3.5K40编辑于 2022-08-23
领券