jmeter性能压测异常
浏览量:1558
一、环境描述
xx系统需要用jmeter工具进行性能测试,执行机系统环境为centos7.3 64位 8C 64G,jdk1.8 ,jmeter4.0 。
执行命令如下:
jmeter -n -t a.jmx -l a.jtl -j a.log
抛出异常:
# Native memory allocation (mmap) failed to map 262144 bytes for committing reserved memory. # An error report file with more information is saved as: # /home/ctmp/hs_err_pid32680.log
二、异常处理
系统:系统为64G,出现异常时内存剩余58G, 文件句柄也进行了优化,因此不会是系统本身内存不足。
jdk:jdk版本为"1.8.0_121 64-Bit" ,和系统版本相匹配
程序:我们跑的程序为jmeter官方4.0版本,默认分配内存为1G。
根据几轮xms增大 2G 5G 10G 根本解决不了问题,分析程序占用分配初始内存以及jmeter并发数调整xms以及xmx,
1个用户请求并发20,如果初始化位xms初始化位1G,xms最大为5G,那么1一个用户执行一次就是1G*20>5G 超过最大分配
调整如下:
: "${HEAP:="-Xms64m -Xmx10g -XX:MaxMetaspaceSize=512m"}" 初始化64m 最大10G=10240m ,一个用户20个并发就是 64*20=1280m 远远小于我们的10G,此时修改完毕 重启jmeter服务,模拟5个用户并发20相当于100并发 那么100*64m=6400m=6G 此时查看执行日志未见异常。
三、总结
遇到内存相关的问题解决思路如下:
1、根据工作经验分析出现原因
2、分析出现异常时日志
3、查看系统本身涉及相关限制
4、询问开发服务本身是否存在jvm相关的设定
5、查看程序本身配置是否恰当
6、其他

神回复
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
张sir 回复该评论
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (mmap) failed to map 2147483648 bytes for committing reserved memory.
# Possible reasons:
# The system is out of physical RAM or swap space
# In 32 bit mode, the process size limit was hit
# Possible solutions:
# Reduce memory load on the system
# Increase physical memory or swap space
# Check if swap backing store is full
# Use 64 bit Java on a 64 bit OS
# Decrease Java heap size (-Xmx/-Xms)
# Decrease number of Java threads
# Decrease Java thread stack sizes (-Xss)
# Set larger code cache with -XX:ReservedCodeCacheSize=
# This output file may be truncated or incomplete.
#
# Out of Memory Error (os_linux.cpp:2627), pid=7581, tid=0x00007f2498de7700
#
# JRE version: (8.0_121-b13) (build )
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.121-b13 mixed mode linux-amd64 compressed oops)
# Fail
发布于 2018-07-12 17:04:42
张sir 回复该评论
false
true
false
continue
false
-1
100
50
true
300
1530775357000
1530775357000
,
utf-8
Id.csv
false
true
shareMode.all
false
examId
D:\migu项目\咪咕印象 \home\perfadmin\apache-jmeter-3.1\bxd\script\Id.csv
false
true
false
=
39.156.1.82
16306
https
/exam/myExams/A1.do
GET
true
false
发布于 2018-07-12 17:05:26