【故事】为什么周董发新歌会把QQ音乐服务器搞挂

点击蓝字,一起变强

前晚 11 点,朋友圈被周董的新单曲 【说好不哭】刷屏了。

QPS

QPS(Query Per Second),指的是系统每秒能处理的请求数。这个是衡量系统性能的重要指标。有时候,我们也称之为吞吐量。

RT

响应时间(Response Time),是指从客户端发一个请求开始计时,到客户端接收到从服务器端返回的响应结果结束所经历的时间。

如果一个网站的RT很长的话,就会特别的影响用户体验。所以,RT是很重要的一个指标。也是各个网站需要重点优化的。

当我们评价一个网站的"快"和"慢"的时候,其实说的就是他的RT时间的长和短。当我们访问某个网站,有时候我们会说这个网站很"卡",其实言下之意说的就是这个网站的RT很长。

在这里,其实可以把QQ音乐比喻成一家饭店。

饭店平日里生意一般,每天招待几十个人完全没有问题。但是某一天,饭店突然被网红美食节目宣传了一波,引得一大批人关注,争相前往。

饭店由原本客流量的几十人,一下子增加为几百上千人。为了服务大量的顾客,就会导致整个饭店的服务员异常忙碌,不得停歇。这将很容易导致服务员累坏崩溃。

这个例子中,美食节目的宣传就相当于周杰伦发唱片,吸引了一波粉丝流量;过多的人前来吃饭导致服务员忙碌,就如流量过大使得服务器内存、CPU资源使用占比飙升,变得容易吃不消而瘫痪。RT就相当于顾客去饭店排队到吃完走人的时间;QPS相当于饭店这一天之内能够接纳的顾客数量。

服务降级

举个例子,有的时候我们去饭店吃饭,吃完饭以后服务员会拿一张问卷,让就餐者填写一下用户反馈。但是,这种让用户填写反馈的请求,只有在店里不忙的时候才会出现。如果店里非常忙,顾客很多的话,店员就不会再找就餐者填写问卷了。这种就是服务降级。

在人流量大的时候,用户反馈这个功能就被降级了。因为他相对来说并没有那么重要。回到QQ音乐上面来说,在访问流量过大的时候,就可以把不那么重要的歌曲评论等功能降级掉先。

限流降级

饭店的人看到顾客太多源源不断,则可以设定一个最大招待人数,一旦超过这个人数,则让后面想要过来排队的顾客不用过来排了,因为名额已经用完。

这其实也是电商网站常见的策略。对于某些功能,设定一个流量阈值,一旦流量达到阈值的话,就进行降级。

比如秒杀功能,如果一瞬间流量太大,就可以进行限流降级。对于后续访问的用户直接提示已售空、跳转错误页、或者让他输入验证码重试等。而QQ音乐让部分人下不了单,也是这个道理。

以上介绍的是在原有硬件架构不变的降级措施,相对应的还有扩容措施。

(鹿晗宣布恋情之后,新浪程序员在扩容)

扩容其实就相当于扩大饭店的经营面积,增加更多的服务员来服务,在这里就不展开介绍了。


 

 -End- 

往期精彩:

Hi,我是二毛,一个在大城市漂泊的程序员

图解数字签名

【故事】为什么C盘太满系统会卡?


    欢迎来到程序员二毛的世界,在这里你将走进程序员的生活,感受职场冷暖,体会生活感悟,并学习到有趣的编程技术。

    关注公众号《程序员二毛》,后台回复 1024 领取变强秘籍;点击“菜单栏-加群交流”可进入攻城狮交流群。

你“在看”我吗?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值