Jmeter 之 ServerAgent 在性能測試的時候通過插件監聽數據庫狀態


https://jmeter-plugins.org/downloads/old/

下載幾個jar包,導入到Jmeter對應到目錄下/lib/ext文件夾下,注意只支持Jmeter3.2(不含)以下版本。

重啟Jmeter。

 

然后在Listner中選中ja@pc --等等應用

新建測試用的取樣器,並在監聽器選擇jp@gc - PerfMon Metrics Collector和jp@gc - Transactions per Second兩個監聽器,ServerAgent默認是4444端口,也可以修改,比如:./startAgent.sh –udp-port 0 –tcp-port 3450這樣

 

我一般比較習慣到是將SQLserver數據庫中

以查詢的方式將DB狀態新增到自己新建的DB_Status_log表中

如果是性能測試,頻繁調用,可以用getdate() 格式化時間后,以想要到單位,比如2s,用while循環插入表中。

這樣之后可以查看DB_Status_log來查找DB到瓶頸。

注意要有管理員權限:

1-查看CPU占用量最高的會話及SQL語句

SELECT SPID,CMD,CPU,PHYSICAL_IO,MEMUSAGE,
(SELECT TOP 1 [TEXT] FROM ::FN_GET_SQL(SQL_HANDLE)) SQL_TEXT
FROM MASTER..SYSPROCESSES ORDER BY CPU DESC,PHYSICAL_IO DESC




2-查看緩存重用次數少,內存占用大的SQL語句

SELECT TOP 100 USECOUNTS, OBJTYPE, P.SIZE_IN_BYTES,[SQL].[TEXT] 
FROM SYS.DM_EXEC_CACHED_PLANS P OUTER APPLY SYS.DM_EXEC_SQL_TEXT (P.PLAN_HANDLE) SQL 
ORDER BY USECOUNTS,P.SIZE_IN_BYTES  DESC

 查看數據庫狀態,如果一台windows只安裝了一個數據庫的話,直接通過查看資源管理器也可以看到。雖然略粗俗了點。

 

 

 

以前從未想過一個linux server 如果是4核,要如何具體地看每核到使用率。

第一反應是linux server就是雙向公路,4車道到路,為啥只走一車道呢。難道還有3車道被水給淹了嗎?

性能測試的瓶頸,一切問題皆IO,

領導永遠會承諾你,8G內存不夠用16G,4核不夠用8核

數據就像小轎車,行駛到公路上到時候一般不會堵,占地面積是有限到,服務器資源可以無限到,一個兩個三個~~集群。

停車場是DB,停車是入庫,開走車是出庫,車位是一張表,頻繁進出才會有問題。

停車場到錯綜復雜就像各個表到外建關聯關系,又被各種左右外鏈接,

君不見停車場到車總是開的那么慢嘛 ~

 

 

 

學無止境

學會記錄,比如我忘記了jmeter錄制https請求,在mac上用Jmeter各種問題等等,只想讓自己謹記如果工具不是你寫的,你要么找時間看源代碼,要么記得記錄吧

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM