04系统设计目标(一)如何提升系统性能?
提到互联网系统设计,你可能听到最多的词就是"三高",也就是 高并发、高性能、高可用。
他们是互联网系统架构设计永恒的主题,前面我们了解了高并发系统的意义及设计原则,接下来我们整体了解下高并发系统设计的目标,然后再进入我们今天的话题:如何提升系统性能。 高并发系统设计的三大目标:高性能、高可用、可扩展
高并发,是指运用设计手段让系统能够处理更多的用户请求,承担更大的流量。它是一切架构设计的背景和前提,脱离了它去谈性能和可用性是没有意义的。很显然,你在每秒一次请求和每秒一万次请求的两种场景下,分别做到毫秒级响应和五个九(99.999%)的可用性,无论设计难度还是方案复杂度都不是一个级别的。
高性能和高可用也是我们实现高并发系统设计必须考虑的。
性能反应了系统的使用体验,同样承担每秒一万次请求的两个系统,一个响应毫秒级别,一个响应秒级别,他们给用户带来的体验肯定是不一样的。
可用性代表系统可以服务用户的时间,再类比一下,两个承担每秒一万次的系统,一个做到全年不宕机、无故障,另一个隔三差五需要宕机维护,你选择那一个 呢?
另一个耳熟能详的词叫可扩展性,他同样是高并发系统需要考虑的。
流量分为平时流量和峰值流量。峰值流量可能会是日常流量的几倍甚至几十倍。在应对峰值流量的时候我们通常要在架构方案上做更多的准备。这也是淘宝花费大半年时间准备双十一,微博在明星离婚等热点事件时,还是会出现不可用。
而易扩展的系统能在短时间内迅速完成扩容,更加平稳的承担峰值流量。
高性能、高可用、易扩展是我们在高并发系统设计方案必须考量的三个目标。那么我们如何在高并发流量下设计出高性能、高可用、易扩展的系统呢?也就是我们的主题。
篇幅太长,放在下一篇 再来干货,继续关注。