吐血整理,Jmeter分布式性能压测-常见问题+解决(详细整理)

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

安装常见问题
问题1:

[root@iZwz95j86y235aroi85ht0Z bin]# ./jmeter-server
Created remote object: UnicastServerRef2 [liveRef: [endpoint:[:39308](local),objID:[24e78a63:16243c70661:-7fff, 7492480871343944173]]]
Server failed to start: java.rmi.RemoteException: Cannot start. Unable to get local host IP address.; nested exception is:
java.net.UnknownHostException: iZwz95j86y235aroi85ht0Z: iZwz95j86y235aroi85ht0Z: Name or service not known
An error occurred: Cannot start. Unable to get local host IP address.; nested exception is:
java.net.UnknownHostException: iZwz95j86y235aroi85ht0Z: iZwz95j86y235aroi85ht0Z: Name or service not known

解决:
hostname 命令获取机器名称,追加一个映射 iZwz95j86y235aroi85ht0Z

vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
120.79.160.143 iZwz95j86y235aroi85ht0Z

windows用户 修改c:\windows\system32\drivers\etc\hosts文件,增加一条域名 与IP的映射

问题2:

[root@iZwz95j86y235aroi85ht0Z bin]# ./jmeter-server
Server failed to start: java.rmi.server.ExportException: Listen failed on port: 0; nested exception is:
java.io.FileNotFoundException: rmi_keystore.jks (No such file or directory)
An error occurred: Listen failed on port: 0; nested exception is:
java.io.FileNotFoundException: rmi_keystore.jks (No such file or directory)

解决:
拥有RMI over SSL的有效密钥库,或者禁用了SSL。

禁用SSL
jmeter.property里面 server.rmi.ssl.disable 改为 true,表示禁用

问题3:

[root@userCenter bin]# ./jmeter-server
Created remote object: UnicastServerRef2 [liveRef: [endpoint:[127.0.0.1:39687](local),objID:[-18db419a:167773db861:-7fff, -176377700206527642]]]
Server failed to start: java.rmi.RemoteException: Cannot start. userCenter is a loopback address.
An error occurred: Cannot start. userCenter is a loopback address.

解决:
执行时加上参数./jmeter-server -Djava.rmi.server.hostname=10.1.1.222

问题4:

[root@iZ949uw2xehZ bin]# ./jmeter
Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00000000c0000000, 1073741824, 0) failed; error='Cannot allocate memory' (errno=12)
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (mmap) failed to map 1073741824 bytes for committing reserved memory.
# An error report file with more information is saved as:
# /usr/local/jmeter/apache-jmeter-4.0/bin/hs_err_pid5855.log

解决:
编辑jmeter
搜索 : “${HEAP:=”-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m"}"
改变初始堆内存和最大堆内存

仅修改 server_port 即可,下面两者一样

server.rmi.localport=8899 表示slave server启动显示的端口
server_port=8899 表示master机器要远程连接的端口 即 remote_hosts=xxxx:8899

jmeter 分布式性能测试(多网卡配置)

我们要在多网卡的服务器上开启RMI服务的话必须指定IP,使他们能够在同一个网段内。

需要以下几步(假定所有机器都在10.120.11.*网段,agent服务器为linux,controller服务器为windows):

修改agent服务器,指定agent机器的IP
1)修改jmeter-server文件

# vi jmeter-server

修改RMI_HOST_DEF=-Djava.rmi.server.hostname=xxx.xxx.xxx.xxx(需要连接的IP)

2)修改server服务器,指定server机器的IP

修改jmeter.bat文件
新增set rmi_host=-Djava.rmi.server.hostname=10.120.11.214
修改set ARGS=%DUMP% %HEAP% %NEW% %SURVIVOR% %TENURING% %PERM% %DDRAW% %rmi_host%

确定在controller机器上安装jdk,版本和jmeter一致,配置环境变量:Java_home等

在Agent机器上安装jdk,配置环境变量:Java_home和JMeter_home
安装目录不要带空格,最好都是简短的英文路径

master机器启动后会拷贝jmx文件到slave机器,所以不需要在每台slave机器上也上传一份jmx,只需要在master机器上上传一份jmx脚本即可。

如果使用csv进行参数化,则需要把参数文件在每台slave上拷一份且路径需要设置成一样的。

总样本数 = 线程数 * 循环次数 * 执行机总数

连接失败原因排查

以下步骤进行排查:
jmeter-server是否启动;
是否联网;
ping 服务器IP是否畅通;
telnet 端口 192.168.3.10 1099;
检查服务器的防火墙是否关闭;
阿里云安全策略是否正常;

问题:
“could not find ApacheJmeter_core.jar”
解决:
在Agent机器安装jdk,并设置环境变量

问题:
”Bad call to remote host"
解决:
检查被控制机器上的jmeter-server有没有启动,或者remote_hosts的配置是否正确。

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

只有奋斗不息,才能让梦想破茧成蝶,展翅高飞;只有坚守初心,才能在风雨中追求辉煌;只有付出汗水与泪水,才能收获成就与喜悦。相信自己,无限可能等待着你!

只有经历过磨难的人,才能看到成功的光芒;只有敢于追求梦想的人,才能创造奇迹。相信自己的力量,坚持不懈地努力,你一定能闪耀出属于自己的辉煌!

只有拼尽全力,才能跨越梦想的彼岸;只有坚持不懈,才能铸就辉煌的未来;只有迎难而上,才能收获人生的壮丽篇章。奋斗吧,你我同在,努力成就不凡!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/21303.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

面试题更新之-什么是响应式设计?响应式设计的基本原理是什么?如何兼容低版本的IE?css实现响应式设计的方案

文章目录 什么是响应式设计?响应式设计的基本原理是什么如何兼容低版本的IE?css实现响应式设计的方案媒体查询(Media Queries):弹性单位(Flexible Units):Flexbox布局:Gr…

【工具推荐】企业微信、企业飞书接口调用工具

github地址: GitHub - fasnow/idebug: 企业微信、企业飞书接口调用工具。 简介 企业微信、企业飞书接口调用工具。 使用方法 wechat模块 使用use wechat 选择模块。 首先设置corpid和corpsecret,如有需要可以设置代理,之后再执行run命令。 导出通信…

【学习笔记】在Android使用Frida进行https抓包

最近需要在Android进行https抓包,对数据解密,找了很多方法,终于成功了,不过原文一些步骤对于我这个小白还是有点不理解的地方,在此记录一下。 1. 前提条件 一台root手机frida环境 2. frida环境搭建 该步骤全程参考&…

生命周期函数和wxs脚本

生命周期函数和wxs脚本 1. 生命周期函数1.1. 应用的生命周期函数1.2. 页面的生命周期函数 2. wxs脚本2.1. wxs与JavaScript的关系2.2. wxs内嵌脚本2.3. wxs外联脚本2.4. tips 1. 生命周期函数 1.1. 应用的生命周期函数 应用的生命周期函数:指小程序从启动 -> 运…

Hadoop 单机部署和测试(一)

Hadoop单机部署和测试 一.单机部署1.安装 JDK(JDK11)2.安装 HADOOP3.测试 一.单机部署 系统版本:cat /etc/anolis-release1.安装 JDK(JDK11) #!/bin/bashTOP_PATH$(pwd) JAVA_PATH/usr/local/java FILEls $TOP_PATH/…

mysql索引的简单使用

删除 goods 表中的 goods_desc 字段及货号字段,并增加 click_count 字段 在 goods_name 列上加唯一性索引(用alter table方式) alter table add unique index uniqididx(goods_name);去查看索引 发现有goods_name的唯一索引 在 shop_price 列上加普通…

Java中Map使用增强for循环和迭代器获取key和value

加油,新时代打工人! java中List集合三种获取集合元素方式 本文运行代码使用 jdk1.8 for 语句比较简单,用于循环数据。 Java迭代器(Iterator)是 Java 集合框架中的一种机制,是一种用于遍历集合&#xff08…

mac桌面时钟 浮动 (python)

浮动时钟,多地时区 app store的都要钱,于是。。。。我们让chatgpt来实现一个吧: 数字: 代码: import sys import datetime import pytzfrom PyQt5.QtWidgets import QApplication, QMainWindow, QGraphicsView, QGr…

MySQL为什么要使用B+树做索引?MySQL索引存储模型推演,B+树在MySQL的落地形式

文章目录 一、什么是索引1、索引初体验2、索引图解3、索引类型 二、索引存储模型推演1、二分查找2、二叉查找树(BST Binary Search Tree)3、平衡二叉树(AVL Tree)(左旋、右旋)(1)平衡…

STL标准模板库 set容器

文章目录 迭代器迭代器的五大分类迭代器系列帮手函数一览 set容器打印任意 STL 容器的printer.hset与vectorset 和 vector 的区别set 和 vector 迭代器的共同点set 和 vector 迭代器的不同点 set 的排序set 的排序:string 会按“字典序”来排set 的排序:…

云计算UPS监控,怎么办?

在大型数据机房中,UPS系统扮演着关键的角色,为计算机和网络设备提供可靠的电力备份。由于数据机房的规模庞大且关键性强,监控UPS系统的可靠性和效率至关重要。 UPS监控可以提供实时的电池状态、负载信息、电网电压等监测数据,并能…

代码随想录打卡

这里写目录标题 1.数组部分1.1二分查找1.2移除元素1.3 有序数组的平方1.4长度最小的子数组1.5螺旋矩阵II 2. 链表部分2.1移除链表元素2.2设计链表2.3反转链表2.4两两交换相邻的节点2.5删除链表的倒数第n个节点2.6环形链表II2.7链表相交 3.哈希表 1.数组部分 1.1二分查找 class…