疫情期间,千万级系统宕机N次,老板撂下狠话:没法把性提升10倍,全员解雇!...
性能調優(yōu)整體思路
作為一名團隊技術核心,如何讓系統(tǒng)跑得通、跑得穩(wěn)、跑得快是必然會面對的場景。性能分析是一個大課題,不同的架構、不同的應用場景、不同的程序語言分析的方法若有差異,抽象一下大致分為兩類:
自底向上:通過監(jiān)控硬件及操作系統(tǒng)的指標(CPU、內存、磁盤、網絡等硬件資源的性能指標)來分析性能問題(配置、程序等問題)。因為用戶請求最終是由計算機硬件設備來完成的,做事的是CPU。
自頂向下:通過生成負載來觀察被測試的系統(tǒng)性能,比如響應時間、吞吐量;然后從請求的起點由外及里一層一層的分析,從而找到性能問題所在。
不管是自上而下還是自下而上,關鍵點就是生成負載、監(jiān)控性能指標。好一點的方式是先用自頂向下的方式解決掉明顯的性能問題,再結合自底向上的方式分析更深層次的問題。
性能分析過程
步驟名稱 | 說明 |
檢查RT | 模擬用戶發(fā)起負載后,采用的自頂向下的方式首先分析RT(響應時間) |
檢查TPS | TPS大時RT小,說明性能良好 |
檢查負載機資源 | 檢查CPU使用率,CPU負載(Load Average)確認是用戶CPU占用高還是系統(tǒng)CPU占用高 |
判斷負載機是否有性能問題 | 排除負載機的性能問題,確保測試結果可參考 |
檢查Web服務器的資源消耗 | 1、檢查CPU使用率,確認用戶CPU與系統(tǒng)CPU占用情況 |
確認是否Web服務器瓶頸 | 標判斷是否是Web服務器硬件性能瓶頸 |
檢查中間件配置 | 確認是否是此配置問題 |
檢查APP服務器資源消耗 | 關注CPU、內存、磁盤、IO,判斷是否是App服務器硬件性能瓶頸 |
數據庫服務器資源消耗分析 | 1、CPU消耗,CPU負載 |
是否是DB性能問題 | 由監(jiān)控結果來判斷是否是DB性能問題 |
是否SQL問題 | 1、定位最不合理的SQL占比索引是否正常引用 |
其他 | 比如網絡阻塞、磁盤IO瓶頸、熱點等 |
?.NET性能調優(yōu)四天集訓
3月11日~14日,架構師Zilor老師將帶領大家開啟.NET性能調優(yōu)4天突擊營,Zilor老師擁有12年軟件開發(fā)經驗,7年大型互聯(lián)網架構經驗,此次,他將會為大家復盤.NET性能調優(yōu)的經典場景,為大家提供高效、接地氣的解決方案,讓您迅速成為面試官或同事眼中的“老司機”。
課程原價599元,本號粉絲一律0元學(免費名額僅499名),長按掃碼進班級群。
第一天:如何使用VS進行性能排查? ??算法對性能的影響
緩存對性能的作用
鎖的問題
響應與吞吐
Performance Diagnostic Tools
內存緩存與響應緩存中間件
響應壓縮
負載測試與壓力測試
SQL語句優(yōu)化
索引
分區(qū)、分表與分庫
讀寫分離
?延遲加載與貪婪加載
IQueryable與IEnumerable的區(qū)別
實體追蹤
查詢優(yōu)化
標量函數
進群享四大福利
福利1:送價值399元.NET Core視頻合集
福利2:送價值299元微服務視頻合集
福利3:送價值499元數據結構算法視頻合集
福利4:贈送價值199元Redis視頻合集
掃碼獲取以上福利
僅限前199名
總結
以上是生活随笔為你收集整理的疫情期间,千万级系统宕机N次,老板撂下狠话:没法把性提升10倍,全员解雇!...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: .NET Core开发实战(第21课:中
- 下一篇: java信息管理系统总结_java实现科