Jmeter压测问题汇总

缘起

公司的Elasticsearch流量日益减少,经过评估,我们计划迁移到成本更低的Mysql集群上,需要对接口进行压力复测

版本

  • JDK17(会有兼容性问题,建议使用JDK17之前的版本)
  • Jmeter 5.2.1

windows系统下临时端口不够用问题

java.net.BindException: Address already in use: connect

解决方案:

  1. 增加临时端口数量:网上一搜一大堆,不再赘述
  2. Jmeter线程组去掉Use KeepLive选项

Jmeter GUI配置的csv文件迁移后找不到问题

大多的Jmeter在使用GUI配置好后都会生成.jmx文件并使用命令启动进行压测,我是在windows上配置好压测脚本并生成jmx文件放在服务器上使用命令执行:

/opt/app/apache-jmeter-5.2.1/bin/jmeter -n -t /opt/app/jmx_files/xxx接口-单压-100并发-5分钟.jmx -l /opt/app/jtl_files/xxx接口-单压-100并发-5分钟.jtl -e -o /opt/app/jmeter_result

出现错误:

File xxx.csv must exist and be readable

原因是我在windows下设置了csv的绝对路径,但在服务器上没这个路径导致报错。
解决方案:

  1. 使用服务器绝对路径并把csv文件放在这个绝对路径下
  2. 使用跨平台配置,csv路径设置为${__P(user.dir,)}${__P(file.separator,)}xxx.csv,然后把xxx.csv文件放在Jmeter home目录下bin下,并在bin中启动jmeter
  3. 如果你已经配置好并且生成了大量的jmx文件,不想回去一个个的调整,可以使用文本编辑器打开jmx文件,搜索到路径后统一替换

Jmeter 与jdk兼容性问题

java.lang.IllegalStateException: Begin size 0 is not equal to fixed size 5

原因是:在Java 17中,当消费者初始数组大小大于流大小时,stream.toArray()会抛出异常。

参考连接 https://www.saoniuhuo.com/question/detail-2760135.html
解决方案:
截止到文章发表日,JDK17未修复此问题,换成17以下的版本即可。

相关推荐

  1. Jmeter问题汇总

    2024-05-10 07:48:07       35 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-10 07:48:07       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-10 07:48:07       100 阅读
  3. 在Django里面运行非项目文件

    2024-05-10 07:48:07       82 阅读
  4. Python语言-面向对象

    2024-05-10 07:48:07       91 阅读

热门阅读

  1. Vue 传送门

    2024-05-10 07:48:07       27 阅读
  2. Linux习题和答案

    2024-05-10 07:48:07       38 阅读
  3. 十二届蓝桥杯Python组3月中/高级试题 第四题

    2024-05-10 07:48:07       31 阅读
  4. 负载均衡总结

    2024-05-10 07:48:07       38 阅读
  5. Ubuntu服务器命令行关机&重启&查询记录

    2024-05-10 07:48:07       37 阅读
  6. Nacos配置实时更新:微服务架构下的关键实践

    2024-05-10 07:48:07       32 阅读
  7. elasticsearch搭建教程

    2024-05-10 07:48:07       32 阅读
  8. Android ScrollView 在按键向下滚动后会回弹问题

    2024-05-10 07:48:07       32 阅读
  9. 六.音视频编辑-创建视频过渡-应用

    2024-05-10 07:48:07       22 阅读