系统性能衡量维度、指标
一、性能問題簡介
? ? ? ?應用性能是產品用戶體驗的基石,性能優化的終極目標是優化用戶體驗。當我們談及性能,最直觀能想到的一個詞是“快”,Strangeloop在對眾多的網站做性能分析之后得出了一個著名的3s定律“頁面加載速度超過3s,57%的訪客會離開”,可見頁面加載速度對于互聯網產品的重要性。
二、性能指標
? ? ? ?性能優化是個系統性工程,涉及到后端、前端、移動端、系統網絡及各種基礎設施,每一塊都需要做各自的性能優化。當我們系統的分析性能問題時,可以通過以下指標來衡量:
1、Web端:首屏時間、白屏時間、可交互時間、完全加載時間等
? ? ? ?首屏時間是指從用戶打開網頁開始到瀏覽器第一屏渲染完成的時間,是最直接的用戶感知體驗指標,也是性能領域公認的最重要的核心指標。
? ? ? ?首屏時間 = DNS時間 + 建立連接時間 + 后端響應時間 + 網絡傳輸時間 + 首屏頁面渲染時間
2、移動端:Crash率、內存使用率、FPS(Frames Per Second, 每秒傳輸幀數)、端到端響應時間等
? ? ? ?Native相比于H5在交互體驗方面有更多的優勢,FPS是體現頁面順暢程度的一個重要指標,另外移動端開發同學還需要關注App進程的CPU使用率、內存使用率等系統性能指標。端到端響應時間是衡量一個API性能的關鍵指標,比純后端響應時間更全面,它會受到DNS、網絡帶寬、網絡鏈路、HTTP Payload等多個因素的影響。
? ? ? ?端到端響應時間=DNS解析時間+網絡傳輸時間+后端響應時間
3、后端:響應時間(RT)、吞吐量(TPS)、并發數等
? ? ? ?QPS: 每秒鐘處理完請求的次數;注意這里是處理完。具體是指發出請求到服務器處理完成功返回結果。可以理解在server中有個counter,每處理一個請求加1,1秒后counter=QPS。
? ? ? ?TPS:每秒鐘處理完的事務次數,一般TPS是對整個系統來講的。一個應用系統1s能完成多少事務處理,一個事務在分布式處理中,可能會對應多個請求,對于衡量單個接口服務的處理能力,用QPS比較多。
?? ? ? 并發量:系統能同時處理的請求數
?? ? ? RT:響應時間,處理一次請求所需要的平均處理時間。后端系統響應時間是指系統對請求做出響應的時間(應用延遲時間),對于面向用戶的Web服務,響應時間能很好度量應用性能,會受到數據庫查詢、RPC調用、網絡IO、邏輯計算復雜度、JVM垃圾回收等多方面因素影響。
? ? ? ?對于高并發的應用和系統,吞吐量(TPS)是個非常重要的指標,與CPU、內存資源的消、調用的外部接口及IO等緊密關聯。
計算關系:
? ? ? ?QPS = 并發量 / 平均響應時間
? ? ? ?并發量 = QPS * 平均響應時間
三、影響性能的因素
? ? ? ?互聯網產品是創意、設計、研發、系統、網絡、硬件、運維等眾多資源相互交織的集合體,性能受多方面因素影響,猶如一只木桶,木桶能盛多少水,取決于最短的那塊木板,也可稱之為短板效應。影響產品性能的因素有:
1、產品邏輯與用戶行為
? ? ? ?產品邏輯過于復雜、功能交互過于豐富、產品設計過于絢麗、頁面元素素材過多等都會影響產品性能。
2、基礎網絡
? ? ? ?中國的基礎網絡是世界上最復雜的基礎網絡,國內的網絡運營商眾多且各自為政,互聯互通成本很高。對于境外業務來說更是要面對國內國際網絡交互的情況,再加上GFW的存在,網絡延遲、丟包現象非常嚴重。
3、代碼及應用
? ? ? ?開發語言瓶頸、代碼質量及系統架構等都會影響系統性能,常見的代碼及應用問題有:
? ? ? ?(1)、架構不合理。業務發展超越架構支撐能力而導致系統負荷過載,進而導致出現系統奔潰、響應超時等現象。另外不合理的架構如:單點、無cache、應用混部署、沒有考慮分布式、集群化等也都會影響性能。
? ? ? ?(2)、研發功底和經驗不足。開發的App、Server效率和性能較低、不穩定也是常見的事情。
? ? ? ?(3)、沒有性能意識,只實現了業務功能不注意代碼性能,新功能上線后整體性能下降,或當業務上量后系統出現連鎖反應,導致性能問題疊加,直接影響用戶體驗。
? ? ? ?(4)、多數的性能問題發生在數據庫上。由慢SQL過多查詢等原因造成的數據庫瓶頸,沒有做讀寫分離、分庫分表等。
4、移動端環境
? ? ? ?移動互聯網時代,移動端環境的復雜性對產品的性能影響也很大,比如用戶的設備類型、設備性能、操作系統類型、系統版本及網絡類型等。
5. 硬件及云環境
? ? ? ?硬件的發展遵循著摩爾定律,生命周期一般都很短,服務器老化或其他硬件問題經常會導致應用故障。IDC、機架、服務器、內存、磁盤、網卡等不同硬件和操作系統上運行的應用性能差距可以達到數十倍之多。
總結
以上是生活随笔為你收集整理的系统性能衡量维度、指标的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 论文浅尝 | 知识图谱中的链接预测:一种
- 下一篇: 技术动态 | 图对比学习的最新进展