前言
- 一台压力机的 Jmeter 默认最大支持 1000 左右的并发用户数(线程数),再大的话,容易造成卡顿、无响应等情况,这是受限于 Jmeter 其本身的机制和硬件配置(内存、CPU等)
- 由于 Jmeter 是 Java 应用,对 CPU 和内存的消耗较大,在需要模拟大量并发用户数时,单机很容易出现 JAVA 内存溢出的错误,导致测试脚本本身就有瓶颈
提示:以下是本篇文章正文内容,下面案例可供参考
一、应用场景
- 测试 5000 并发的场景,但单机只能支持 1000 并发无法达到 5000
- 通过分布式(5 台机器起)可以模拟 5000 并发
二、使用步骤
1.运行原理
把上面的动图完整看完,就懂了,原理如下:
- Master 是控制机,Slaves 是多个压力机
- 分布式测试中,Master 通过命令行将测试脚本分发给所有 Slave
- Slave 不需要启动 Jmeter GUI,通过 CLI 模式执行测试
- Slave 执行完后,会把结果回传给 Master
- Master 收集所有 Slave 的结果并汇总成一个结果集
注意
- Master 也可以执行测试脚本,也可以不执行只负责管理
2.如何配置
前提:
? ? ? ? 控制机和执行机的jmeter版本和Jdk版本要完全保持一致
? ? ? ? 控制机和执行机的互相ping通且防火墙都关闭
控制机修改
修改配置文件,进入jmeter/bin目录下
remote_hosts=192.168.0.102:8899,192.168.0.101:8899(slaves机器的ip和端口)
server.rmi.ssl.disable=true(禁用ssl)
如果master即作为master也作为slaves
remote_hosts=192.168.0.102:8899,192.168.0.101:8899,master的ip:8899
server_port=8899
server.rmi.ssl.disable=true(禁用ssl)
作为执行机需启动 jmeter-server.bat 服务
执行机修改
remote_hosts=127.0.0.1
server_port=8899
server.rmi.ssl.disable=true(禁用ssl)
作为执行机需启动 jmeter-server.bat 服务
控制机打开jmeter选择运行——》远程启动、远程启动全部即可开始执行
该处使用的url网络请求的数据。
总结
提示:这里对文章进行总结: 例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。
|