如果你想从头学习Jmeter,可以看看这个系列的文章哦

https://www.cnblogs.com/poloyy/category/1746599.html

前言

  • 做性能测试,监控服务器资源指标是必须有的一步
  • 这一篇博客将讲解通过 Jmeter 插件来监控服务器,再通过 Jmeter 观察监控结果

下载、安装、运行插件

  1. JMeterPlugins-Extras.jar
  2. JMeterPlugins-Standard.jar
  3. ServerAgent-2.2.3.zip

可以通过官方下载:https://jmeter-plugins.org/downloads/old/

注意

  • 前两个插件最新版本在官网已经不提供下载了,只能下载旧版本,官方建议通过 Plugins Manager 下载需要的插件哦
  • 博主安装了以下插件,已经包含上面讲的前两个插件了

这里也提供百度云下载链接哈

链接:https://pan.baidu.com/s/1bAaKqGoyaTVoq5picgBGMw

提取码:q92i

客户端(Jmeter 端)

  1. 如果通过官网下载的话,就将 JMeterPlugins-Extras.jar 和 JMeterPlugins-Standard.jar 放到  D:\apache-jmeter-5.2.\lib\ext
  2. 然后通过 PerfMon Metrics Collector 监听器进行服务器性能数据显示

服务端(Linux)

将 ServerAgent-2.2.3.zip 放到任意目录下,解压
unzip  ServerAgent-2.2..zip 

进入 ServerAgent 目录

我提供的 ServerAgent 里面,两个 start 脚本已经是可执行脚本了,直接运行即可

./startAgent.sh
运行成功,则会出现下图
如果无法运行,则需要给脚本赋权
chmod  startAgent.sh
如果是想监控 Window 机器,则将 ServerAgent 放到 Window 电脑的目录下,然后直接双击运行  startAgent.bat 即可
 

划重点

  • 启动 ServerAgent 的前提是系统已安装配置好 Java 环境
  • 默认占用端口是 4444
 

启动 ServerAgent 可能会出现的问题

端口被占用

杀掉占用 4444 端口的进程

  1. 先查出 4444 端口是什么进程占用
  2. 然后查看进程详情,确认是否能杀掉
  3. 如果可以,则杀掉
 

ServerAgent 通过其他端口启动

./startAgent.sh --udp-port  --tcp-port 

0 代表不开启该端口,一般我们只用 tcp 足以

端口未对外开放

如果服务器开启了防火墙,而且之前没用过 4444 端口,那么该端口很可能会被禁用

为了解决防火墙和开放端口的问题,可以参考这篇博文:https://www.cnblogs.com/poloyy/p/12213297.html

 

Jmeter 监控服务器全流程

一个简单的负载测试线程组结构树

一般做负载测试,会监控服务器资源、活动线程数、响应时间、TPS等等,所以加了一堆监听器

PerfMon Metrics Collector

IP 自然就是填需要监控的服务器 IP啦,如果是监控本机就填 127.0.0.1 就好了

可监控的指标列表

还挺多,不过一般重点关注前面四个就好了

运行结果

我的 cpu 真高...因为数据库出现死锁了,回头可以好好性能分析一波了!

Jmeter系列(35)- 使用 ServerAgent 监控服务器的更多相关文章

  1. Jmeter系列(35)- 设置JVM内存

    场景 单台机器的下JMeter启动较大线程数时可能会出现运行报错的情况,或者在运行一段时间后,JMeter每秒生成的请求数会逐步下降,直到为0,即JMeter运行变得很"卡",这时 ...

  2. Jmeter系列(38)- 详解性能监控工具 nmon

    如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html 前言 做性能测试,服务器监控是至关重要 ...

  3. Jmeter系列(9)- jmeter插件入门篇

    如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html 前言 jmeter4.0以上,如现在最 ...

  4. JMeter接口压测——ServerAgent监控服务端性能指标

    ServerAgent作为一个服务端性能监控插件,结合JMeter自身插件PerfMon可以实现JMeter压测的图形化实时监控,具有良好的实用性.下面讲解一个应用实例 思路: 1. 插件准备 2.打 ...

  5. Jmeter系列培训(1)--开山篇

    ​       一直以来,我们不断分享,有的人喜欢,也有的人不喜欢,这都没什么,喜欢的点个赞,留个言,不喜欢的就不看好了,今天我们继续,关于jmeter我们分享了很多工作遇到的问题的解决方案,但是很多 ...

  6. JMeter 系列之—-01使用

    用Jmeter 做压测,总体与LoadRunner 类似: 一.线程组 1. 线程数 2. 循环次数 单个线程循环次数 3. Ramp-up Period(in seconds) [1]决定多长时间启 ...

  7. Jmeter性能测试,使用ServerAgent监控服务端性能指标

    一.jmeter1.下载JMeter Plugins Manager.jar放到你的jmeter\lib\ext目录下2.启动jmeter,进入Plugins Manager找到perfmon安装这个 ...

  8. Jmeter系列(2)- Jmeter工具介绍、Jmeter安装目录介绍、Jmeter面板介绍

    如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html Jmeter支持哪些测试场景? Jme ...

  9. Jmeter系列(1)- 环境部署

    如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html 官网下载Jmeter http://j ...

随机推荐

  1. SpringBoot实现微信小程序登录的完整例子

    目录 一.登录流程 二.后端实现 1.SpringBoot项目结构树 2.实现auth.code2Session 接口的封装 3.建立用户信息表及用户增删改查的管理 4.实现登录认证及令牌生成 三.前 ...

  2. C语言 俄罗斯方块demo

    这是我的第一篇随笔,当然是发我写的第一个游戏啦! 大一(本人现在大二)寒假过完年,在家待着想起放假前计划写一个游戏的,因为本人立志走游戏开发这条路,加上大一上册学了C语言,就想写个游戏练练手.想了很久 ...

  3. 前后端分离,如何在前端项目中动态插入后端API基地址?(in docker)

    开门见山,本文分享前后端分离,容器化前端项目时动态插入后端API基地址,这是一个很赞的实践,解决了前端项目容器化过程中受制后端调用的尴尬. 尴尬从何而来 常见的web前后端分离:前后端分开部署,前端项 ...

  4. 从0开始探究vue-双向绑定原理

    理解 vue是一个非常优秀的框架,其优秀的双向绑定原理,mvvm模型,组件,路由解析器等,非常的灵活方便,也使开发者能够着重于数据处理,让开发者更清晰的设计自己的业务. 双向绑定,就是数据变化的时候, ...

  5. Linux(二) 系统远程访问

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 1. Why?为什么需要远程访问? 人和人之间对话有两种方式,一种是面对面直接交谈,另一种是打电话. 我 ...

  6. Java实现 LeetCode 653 两数之和 IV - 输入 BST(递归,找差值)

    653. 两数之和 IV - 输入 BST 给定一个二叉搜索树和一个目标结果,如果 BST 中存在两个元素且它们的和等于给定的目标结果,则返回 true. 案例 1: 输入: 5 / \ 3 6 / ...

  7. Java实现寻找和为定值的多个数

    1 问题描述 输入两个整数n和sum,要求从数列1,2,3,-,n中随意取出几个数,使得它们的和等于sum,请将其中所有可能的组合列出来. 2 解决方案 上述问题是典型的背包问题的应用,即先找出n个数 ...

  8. Java实现 蓝桥杯 历届试题 城市建设

    问题描述 栋栋居住在一个繁华的C市中,然而,这个城市的道路大都年久失修.市长准备重新修一些路以方便市民,于是找到了栋栋,希望栋栋能帮助他. C市中有n个比较重要的地点,市长希望这些地点重点被考虑.现在 ...

  9. http1.0 、http1.1和http2.0的区别

    一.HTTP1.0 HTTP 1.1主要区别       1.1 长链接             HTTP 1.0需要使用keep-alive参数来告知服务器端要建立一个长连接,而HTTP1.1默认支 ...

  10. Java基础(九)

    一.总述 多线程程序在较低的层次上扩展了多任务的概念:一个程序同时执行多个任务.通常,每一个任务称为一个线程,它是线程控制的简称.可以同时运行一个以上线程的程序称为多线程程序. 多进程与多线程的区别: ...