Categories
程式開發

一次假期故障引發的性能優化思考


在假期某個夜黑風高的晚上,商家正在直播間如火如荼的做著直播,突然間屏幕卡頓,隨後屏幕上出現大大的“404”,緊接著大量的客訴、告警撲面而來。好在有贊教育的技術團隊響應及時,再經過很短時間的問題分析後,迅速的恢復了系統,保障了商家直播順利進行。這故障到底是怎麼產生的呢?經排查是因為在流量高峰時,系統在性能、可用​​性方面存在不足導致的。那當時你們是怎麼處理的呢?接下來,我會重點從性能優化這塊出發,先普及下性能優化的基本概念,然後再簡述下常用的性能優化手段,最後給出這個故障我們當時的應對之道。

一、什麼是性能優化

正如熵增定律描述的那樣,在一個孤立的系統裡,如果沒有外力做工,其總混亂度(即熵)會不斷增大,直至系統徹底變得無序。在軟件服務領域亦是如此:從應用系統上線那一刻開始,隨著用戶量的增加、業務功能的持續迭代,系統會面臨各種不同程度的挑戰,如果不及時採取優化措施,我們會發現諸多問題,比如:系統怎麼越來越慢了,流量一高系統就卡頓、甚至宕機等等。可以說,性能優化是貫穿在整個軟件生命週期之中的。

1.1 性能衡量指標

在衡量系統性能基線時,一般會從接口“響應時間”和“並發能力”兩個維度考慮。

(1)響應時間(RT)

原文鏈接:【https://www.infoq.cn/article/bm8pD6jDPYTW3wV6D6Z6】。未經作者許可,禁止轉載。