美文网首页
【软件架构篇】复杂度来源

【软件架构篇】复杂度来源

作者: 文竹小二 | 来源:发表于2018-08-26 23:55 被阅读60次

架构设计的目的就是解决系统的复杂度。架构师首先需要识别出系统的复杂度,然后再针对性地给出备选方案,选择备选方案,进而进入备选方案的详细设计。可见识别出系统的复杂性是最关键的一步,如果错了,后面的分析步骤就没有多少意义。

常见的系统的复杂度来源表现在高性能、高可用、可扩展性、低成本、安全、规模。如下图:


image.png

高性能:淘宝和微信支持的QPS在亿级别,典型的高性能代表。一般以QPS、TPS来衡量一个系统的高性能。

高可用:高可用的目的是让用户感觉业务是持续提供的,也即业务高可用。为了实现业务高可用,常见的需要解决计算高可用、存储高可用,前端高可用等。

可扩展性:在进行架构设计时,需要预测接下来一段时间业务的变化,提前做好基础工作,等预测的业务到来时,就可以只实现新业务功能然后无缝集成原有系统,从这一点说明原有系统支持扩展性。

低成本:在进行架构设计时,需要合理控制成本在预算范围内,如果设计的架构成本超出了预算,则架构需要推导重来;如果重新设计的架构仍然超出预算,则可以找老板商量。

安全:安全分为功能安全(比如常见的XSS、CSRF、SQL注入),架构安全(比如针对传统行业的防火墙控制策略,针对互联网行业云服务商的强大带宽和流量清洗能力)。

规模:系统功能越来越多,数据越来越多,都可以体现出规模在不断增长。

相关文章

  • 【软件架构篇】复杂度来源

    架构设计的目的就是解决系统的复杂度。架构师首先需要识别出系统的复杂度,然后再针对性地给出备选方案,选择备选方案,进...

  • 学习笔记:系统架构复杂度的来源

    架构设计的主要目的是为了解决软件系统复杂度带来的问题 1 复杂度来源:高性能性能是软件的一个重要质量属性。衡量软件...

  • 从零开始学架构

    第一章 架构基础 1.架构设计的复杂度来源 1.1 高性能 1.1.1单机复杂度 1.1.2集群复杂度 集群复杂度...

  • 08 | 架构设计三原则

    前面几期专栏,我跟你系统的聊了架构设计的主要目的是为了解决软件系统复杂度带来的问题,并分析了复杂度的来源。从今天开...

  • 架构设计之复杂度的6个来源

    第67篇 极客时间《从0开始学架构》课程笔记。 架构设计的目的 架构设计的主要目的是为了解决软件系统复杂度带来的问...

  • 软件架构之框架与架构

    软件架构指软件系统的顶层结构,是为了解决软件系统复杂度带来的问题。 框架关注的是“规范”;架构关注的是“结构”。框...

  • 架构复杂度的来源

    1. 高性能 高性能增加机器目的在于“扩展”处理性能,例如:平行扩展(加机器)。 2. 高可用 高可用增加机器目的...

  • App通用架构设计

    App通用架构设计 App架构设计的目的 应对App功能庞大,复杂度快速上升的趋势,降低App软件开发的复杂度 提...

  • “无架构”和“MVP”都救不了业务代码,MVVM能力挽狂澜?(二

    复杂度 Android 架构演进系列是围绕着复杂度向前推进的。 软件的首要技术使命是“管理复杂度” —— 《代码大...

  • SpringCloud 微服务(架构篇)

    SpringCloud 微服务(架构篇) 软件架构的进化 什么是软件架构 软件架构是在软件的内部,经过 综合各种因...

网友评论

      本文标题:【软件架构篇】复杂度来源

      本文链接:https://www.haomeiwen.com/subject/vgpaiftx.html