Skip to content

Latest commit

 

History

History
27 lines (17 loc) · 1.02 KB

004-scaling-applicatons.md

File metadata and controls

27 lines (17 loc) · 1.02 KB

程序的扩展

软件系统的扩展性,线性的增加资源可以线性地增加可处理的工作

throwing money at the problem:
花钱解决问题,在这里花钱是指增加硬件资源,解决工作变多的问题。

系统没有扩展性,表示加再多的硬件也无法提供系统的产能

性能和可扩展性的区别:

  • 系统不能满足单个用户的请求,就是性能问题
  • 系统能满足单个用户的请求,但随着用户数量的增加而出问题,就是可扩展性问题

增加系统可扩展性有多种方法,下面一一聊到:

算法

不同的算法在时间、空间有不同的复杂度,有些算法会更加平滑, 本章会介绍如何分析算法的复杂度,如何判断稳定性,以及分布式算法的介绍

算法复杂度

在输入一定的情况下,算法执行时间和占用的内存大小称时间/空间复杂度

a+b:
时间复杂度是T(n)=c*n,c是一次相加时间,n是输入的次数, 相加的次数越多,要的时间也成比例增长