jmeter內存溢出


當我用jmeter來測試elasticsearch性能的時候,發生過三種性質的內存溢出。

1. index

由於數據流過大,內存使用超過jmeter默認的上限,就溢出了。

用記事本打開jmeter.bat文件,里面修改如下:

set HEAP=-Xms256m -Xmx4g
set NEW=-XX:NewSize=128m -XX:MaxNewSize=1024m
set NEW指的是每個線程占用的內存set HEAP指的是累積線程占用的內存
set PERM=-XX:PermSize=1024m -XX:MaxPermSize=1024m  

2. bulk

由於我當時一次bulk裝了1000條請求,而且還有變參是從磁盤文件上獲取數據的。這個時候,本地磁盤IOPS過大,成為瓶頸,導致內存持續增大,直至突破上限,內存溢出。

所以我要做的,就是減少IOPS,我就把變參一律改為random生成,不再讀磁盤文件,內存達到一個闕值,便不再增長,問題解決。

 

3. 還有一種就是jmeter工具本身對內存的占用。監聽器越多,內存開銷越大,因為記錄數據都暫時放在內存中的。故而如果發現內存消耗持續增長,可查看下開了多少監聽器,尤其是結果樹、表格查看結果等消耗內存很大。可考慮關閉一些不必要的,我一般僅僅使用summary report和圖形結果。


免責聲明!

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



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