性能测试工具 Jmeter-PerfMon 监控服务器资源配置避坑!实在是太坑啦!!!

今晚打老虎 · 2024年07月04日 · 最后由 Kfz998 回复于 2024年11月25日 · 5264 次阅读

鉴于搭建经历过于艰辛,本文采用流水席上菜,愿为大家优坑少坑!

背景:基于 Jmeter 监控服务器资源,所需组件:PerfMon Metrics Collector
版本:Jmeter5.1.1(版本随意)

坑 1:本局游戏到底有几位玩家参与?

A.Extras+Standard+ServerAgent
B.PerfMon+Extras+Standard+ServerAgent
C.PerfMon+ServerAgent

答案是:C
解析:
3.1(大概)版本后只需要安装 PerfMon 即可,不需要 A 选择中的两位大坑,如若不然,会报错:版本不匹配!
当你通过百度/bing/google/GPT 等各种方式搜索该问题如何解决时,答案统一都是降低版本叭叭叭的 cv 产物,请忽视!
我搜了一小时,换了 3 个版本都没解决,最后第六感告诉我:删了那两个大坑试一试!然后他就成了

坑 2:为什么就连不到 Agent 服务呢?

A.防火墙没关
B.4444 端口未开放
C.Service 未启动

答案是:D(防火墙没关 +4444 端口有毒 +Service 未启动)
解析:会百度的你应该把防火墙关了,服务也启动了,4444 也开放了,可你发现为什么还是不通呢?没错,默认端口就是有毒的,换个试试吧年轻人

分享:

Jmeter:https://archive.apache.org/dist/jmeter/binaries/
Agent 启动命令:
java -jar ./CMDRunner.jar --tool PerfMonAgent --udp-port 4445 --tcp-port 4445
Windows-telnet 命令开启:控制面板 - 程序 - 开启/关闭 Windows 功能-Telnet 客户端 - 勾选
telnet 命令:telnet xx.xx.xx.xx 4445 可查看能否连通目标服务器及端口

异常报错引流:

ERROR k.a.j.p.PerfMonCollector: Problems creating connector
java.net.ConnectException: Connection timed out: connect
INFO k.a.j.p.PerfMonCollector: Can't connect TCP transport for host: /XX.XX.XX.XX:4444
(不要疑惑为什么 host 前面有个/,问就是设计如此!)
java.lang.IllegalArgumentException: Version Standard not found for plugin jpgc-perfmon
ERROR o.a.j.JMeter: Uncaught exception in thread Thread[StandardJMeterEngine,6,main] java.lang.NoSuchMethodError:

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 7 条回复 时间 点赞

果然写帖子还是需要点创意的,还以为是长文,拉一下就没了

七街老酒 回复

小心独角兽!

主打的就是开门见山,长文实在是太难扯了

虎哥,这个东西会和加压时的数据形成 “对冲” 流量吧?

是的,任何业务外进程都会占用资源,但对测试场景来说都可忽略不计,而且这也是测试不可避免的!
如担心其竞争力较大,可对监控进程的资源占用情况另行监控(请勿套娃)

pidstat -u -r -d -p 1032

Perfmon 插件太老了。上次部署到测试环境 jdk 都不支持。直接就换 telegraf 去采集了。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册