jmeter服务端测试和linux端测试

前言

  • 做性能测试,监控服务器资源指标是必须有的一步
  • 这一篇博客将讲解通过 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.1\lib\ext
  2. 然后通过 PerfMon Metrics Collector 监听器进行服务器性能数据显示

服务端(Linux)

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

进入 ServerAgent 目录

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

运行成功,则会出现下图

如果无法运行,则需要给脚本赋权
chmod 777 startAgent.sh

如果是想监控 Window 机器,则将 ServerAgent 放到 Window 电脑的目录下,然后直接双击运行 startAgent.bat 即可

划重点

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

启动 ServerAgent 可能会出现的问题

端口被占用

杀掉占用 4444 端口的进程

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

ServerAgent 通过其他端口启动

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

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

端口未对外开放

  • 如果服务器开启了防火墙,而且之前没用过 4444 端口,那么该端口很可能会被禁用
  • 为了解决防火墙和开放端口的问题,可以参考这篇博文:https://www.cnblogs.com/poloyy/p/12213297.html

阿里云 4444 端口不能对外开放

如果是用阿里云服务器,4444 端口是无法对外开放的,所以要通过其他端口来启动 ServerAgent

Jmeter 监控服务器全流程

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

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

PerfMon Metrics Collector

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

可监控的指标列表

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

运行结果

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

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • PerfMon是Jmeter用来监控系统资源的一款插件,可以用来监控系统的cpu、内存、I/O等性能指标。 首先是...
    Kingtester阅读 1,160评论 0 1
  • Jmeter本身是不能够展示内存,cpu和吞吐量的,但是可以通过添加插件的方式来对jmeter添加这些功能Jmet...
    SONY3阅读 255评论 0 2
  • Jmeter本身是不能够展示内存,cpu和吞吐量的,但是可以通过添加插件的方式来对jmeter添加这些功能 Jme...
    淺色年華_7d4f阅读 274评论 0 0
  • Jmeter本身是不能够展示内存,cpu和吞吐量的,但是可以通过添加插件的方式来对jmeter添加这些功能 Jme...
    zflain阅读 197评论 0 0
  • 本文主要来说一下如何通过JMeter插件来监控服务器CPU、内存、磁盘、网络等相关资源。 一、首先,需要下载相关J...
    GoGooGooo阅读 442评论 0 0