使用JMeter PerfMon插件EXEC指标为何仍需ServerAgent运行?
JMeter PerfMon插件EXEC指标相关问题解答
为什么用EXEC指标执行脚本必须保持ServerAgent运行?
PerfMon插件采用客户端-服务端的工作模式:JMeter是客户端,负责发起指标采集请求;ServerAgent是部署在目标机器上的服务端组件,所有指标采集操作(不管是内置的CPU、内存监控,还是自定义的EXEC脚本调用)都得通过它来完成。
哪怕是自定义脚本,JMeter也不会直接去运行它——它只是把“执行指定脚本”的指令发给ServerAgent,由ServerAgent去触发脚本运行,再把脚本采集到的结果传回JMeter。一旦停了ServerAgent,JMeter和目标机器之间的通信就断了,自然没法触发脚本,方案也就失效了。
脚本是在ServerAgent中执行吗?
对,脚本是在运行ServerAgent的那台机器上执行的,具体流程是:
- JMeter给ServerAgent发送带脚本路径、参数的EXEC指令
- ServerAgent在本地启动子进程运行该脚本
- 捕获脚本输出的指标数据
- 把数据传回JMeter,由PerfMon监听器展示出来
内容的提问来源于stack exchange,提问作者EhmKah a.k.a. Michael Krauß
相关产品推荐
相关产品推荐

