复杂度来源:低成本、安全、规模

笔记

  • 当我们的架构方案只涉及几台或者十几台服务器时,一般情况下成本并不是我们重点关注的目标,但如果架构方案涉及几百上千甚至上万台服务器,成本就会变成一个非常重要的架构设计考虑点。

  • 低成本很多时候不会是架构设计的首要目标,而是架构设计的附加约束。我们首先设定一个成本目标,当我们根据高性能、高可用的要求设计出方案时,评估一下方案是否能满足成本目标,如果不行,就需要重新设计架构;如果无论如何都无法设计出满足成本要求的方案,那就只能找老板调整成本目标了。

  • 低成本给架构设计带来的主要复杂度体现在,往往只有“创新”才能达到低成本目标。

  • 引入新技术的主要复杂度在于需要去熟悉新技术,并且将新技术与已有技术结合起来;创造新技术的主要复杂度在于需要自己去创造全新的理念和技术,并且新技术跟旧技术相比,需要有质的飞跃。

  • 从技术的角度来讲,安全可以分为两类:一类是功能上的安全,一类是架构上的安全。

  • 如果说功能安全是“防小偷”,那么架构安全就是“防强盗”。

  • 传统的架构安全主要依靠防火墙,防火墙最基本的功能就是隔离网络

  • 互联网系统的架构安全目前并没有太好的设计手段来实现,更多地是依靠运营商或者云服务商强大的带宽和流量清洗的能力,较少自己来设计和实现。

  • 规模带来复杂度的主要原因就是“量变引起质变”,当数量超过一定的阈值后,复杂度会发生质的变化。

    1. 功能越来越多,导致系统复杂度指数级上升。系统的复杂度 = 功能数量 + 功能之间的连接数量。
    2. 数据越来越多,系统复杂度发生质变。

理解与思考

  • 当系统的规模增长到一定规模后,降成本的收益的才会凸显。降成本需要技术创新,所以大公司更适合高级人才。
  • 普通技术人员追求新技术的收益不高,除了开始接触时的新鲜感外。大部分人缺少整合新技术或发明新技术的能力。所以要看清自己的技术层次,去发展这个层次需要的能力。
  • 安全是必选项,不是可选项。但是这方面的投资,是预防性质的,带来的不是直接的收益。如果没有被攻击,就是一种浪费,但是一种必要的浪费。
  • 系统的数据规模对架构的设计影响很大。根据系统的实际数据量做设计,可以避免浪费,提高系统可用性。

思考题

学习了 6 大复杂度来源后,结合你所在的业务,分析一下主要的复杂度是这其中的哪些部分?是否还有其他复杂度原因?
我们的系统,主要的复杂度来自于高性能、低成本和数据规模。客户希望以较低成本的投资来管理更多的网元。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容