jmeter學習指南之OOM和監聽器使用

jmeter視頻:https://edu.51cto.com/course/14305.html


OOM

在執行壓測的時候,有時候會遇到 OutOfMemoryError 內存溢出問題。

可以通過調整 JVM 內存參數進行優化,是在 jmeter.bat 啓動文件中配置的。

以文本方式打開 jmeter.bat,修改以下配置項:


調整堆內存 HEAP 的大小:

將默認的 set HEAP=-Xms512m -Xmx512m,調整爲 set HEAP=-Xms1024m -Xmx1024m;
調整堆內存中新生代 NEW 的大小:

將默認的 set NEW=-XX:NewSize=128m -XX:MaxNewSize=128m,調整爲 set NEW=-XX:NewSize=256m -XX:MaxNewSize=256m;
調整堆內存中永久代 PERM 的大小:

將默認的 set PERM=-XX:PermSize=64m -XX:MaxPermSize=128m,調整爲 set PERM=-XX:PermSize=128m -XX:MaxPermSize=256m;
修改後重啓 jmeter,oom 問題一般可以得到解決(參數的調整不是越大越好,具體根據測試機的硬件配置來決定,循序漸進)。

監聽器的使用
監聽器即 listener ,用來收集 sampler 的結果數據和呈現結果圖形,我們最常用的有察看結果樹、聚合報告等等。

監聽器本身會在每次 sampler 運行完成後執行一次,即一個測試計劃中的監聽器數量越多,運行時帶來的資源消耗就越大(尤其是 察看結果樹 和 用表格察看結果 等)。

因此實際執行測試計劃時,應首先禁用不需要的監聽器,再開始執行;

或者是運行時只啓用一種監聽器, 並將生成的結果寫入文件中,然後就可以用不同的監聽器展現保存的結果數據。

但是, 實際在併發量較大時、或者進行穩定性測試時,最好是去掉或禁用所有的監聽器,根據斷言結果來判斷請求是否成功, 測試報告以plugins插件中的報告形式、或是用文本形式,以此來提高測試結果的準確性。


更多內容見www.xqtesting.com/blog.html


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章