JMeter 5.0在Linux下生成HTML报告目录失败及Windows端口耗尽问题
问题1:Linux下JMeter生成报告目录变为文件(10万请求场景)
针对大请求量下报告目录被生成为文件的问题,排查和解决步骤如下:
- 检查磁盘空间:执行
df -h确认当前磁盘是否有足够存储空间,10万请求的结果文件和报告文件会占用较大空间,磁盘满会导致目录创建失败,转而生成临时文件。 - 确认前置状态:执行命令前,检查是否已存在同名的
report_timestamp_dir文件,若存在则删除后重新执行。 - 手动预创建目录:先执行
mkdir report_timestamp_dir手动创建目标目录,再运行JMeter命令,避免JMeter处理大文件时创建目录失败。 - 检查权限:执行
ls -ld .查看当前目录的读写权限,确保运行JMeter的用户拥有创建目录和写入文件的权限。 - 升级JMeter版本:JMeter 5.0存在部分大报告生成的已知问题,建议升级到5.6.x等稳定版本,修复旧版的文件系统交互bug。
问题2:Windows下JMeter出现大量“Address already in use”错误
Windows环境下端口耗尽是并发压测的常见问题,解决方法如下:
- 调整TCP端口参数(需修改注册表):
- 打开注册表编辑器(
regedit),定位到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters - 新增DWORD值
MaxUserPort,设置十进制值为65534,扩大可用临时端口范围 - 新增DWORD值
TcpTimedWaitDelay,设置十进制值为30,加快TIME_WAIT状态端口的回收速度 - 修改后重启系统生效
- 打开注册表编辑器(
- 启用HTTP Keep-Alive:在JMeter的HTTP请求(或HTTP请求默认值)的“高级”设置中勾选“Use keep-alive”,复用连接减少端口占用
- 优化线程配置:适当降低并发线程数,或在“线程组”中设置“线程间延迟”,避免短时间内发起过多请求
- 配置连接超时:在HTTP请求中设置合理的“连接超时”和“响应超时”,避免无效连接长时间占用端口
内容的提问来源于stack exchange,提问作者Stark
相关产品推荐
相关产品推荐

