主要涉及資料庫、應用伺服器的效能分析
1、併發請求50個,兩個url,相當100併發數
應用伺服器一直保持cpu佔用率為20%-40%
資料庫程序連線數提公升20個,增加20左右會話數
2、併發請求10個,兩個url,相當200併發數
1、 記憶體數提公升,訪問url時,需要請求資料庫操作,雖然操作完成關閉連線,但因一直併發請求時,關閉連線馬上又請求資料庫操作,使資料庫程序連線數一直保持在一定數量。
1、對於資料庫的壓力測試:可根據資料庫連線數/主要介面併發請求時占用的連線數,比如:程序連線數1000,併發100使用者,會占用40連線數,那理論上資料庫可承受5000併發資料庫請求
當然,實際專案中並不只有主要介面,20/80原則中的其他資料庫操作時,也會占用資料庫連線數,具體也根據不同應用,業務來進行壓力測試和調整。
解決方式:對於資料庫本身來說,除了基本資料庫操作,對於索引優化、讀寫分離、垂直分庫、水平拆分、資料庫拆分等優化操作,也需要考慮和設計
2、應用伺服器壓力:主要有cpu、記憶體
介面請求時,處理業務邏輯時,會增加cpu的運算能力和記憶體的儲存占用,當核心邏輯複雜時,會占用cup的處理能力,單伺服器的併發數測試,取決於cpu占用數,比如:併發50個使用者,cpu佔用率20%,理論上最終可同時支援250個併發。
解決方式:優化業務**,從業務、資料結構、演算法等方面提公升處理能力;應用伺服器集群;增加應用快取;訊息服務
CPU,記憶體理解
計算機的系統框圖,嵌入式裝置也一樣。控制單元和算術運算單元組成cup,圖中的主記憶體也就是我們常講的記憶體,這個記憶體就是記憶體條。cpu 為乙個具有特定功能的晶元,裡頭含有微指令集 如果你想要讓主機進行什麼特異的功能,就得要參考這顆 cpu 是否有相關內建的微指令集才可以。上面所述的微指令集 精簡...
Ubuntu16 04 CPU壓力測試
我也是乙個ubuntu初學者,分享是linux的優良美德。寫的不好請大佬不要噴,多謝支援。sudo apt get update日常先更新再安裝東西不容易出錯 sudo apt get upgrade y繼續公升級一波 sudo apt get install y linux tools uname...
理解CPU記憶體管理
概述 從設計層面理解cpu的記憶體模式,包括段式記憶體管理 頁式記憶體管理以及虛擬化擴充套件記憶體管理。實際上,硬體支援與軟體實現從來就不是能分開講的,比如,intel cpu架構師在選擇cpu的硬體特性時,必然會站在軟體的角度審視該特性。目前,硬體實現的許多特性完全可以由軟體方式實現,但為何非要設...