在对系统做压力测试时,往往需要对服务的性能进行监控,包括CPU,Memory,IO,还有网络情况进行监控。 Jemter有个一插件,能很好的支持这些性能监控。原理是服务器启动服务之后,测试机发起请求,然后服务器通过某一个约定好的端口将数据返回到测试机。
1. 配置好测试机器上的jmeter环境
2. 下载插件JMeterPlugins-Standard-1.1.3.zip 和 ServerAgent-2.2.1.zip。
官网是http://jmeter-plugins.org/downloads/all/
3. Standard的zip包解压缩之后,将JMeterPlugins-Standard.jar 放在XXXApachejmeterlibext下,重启jmeter就可以看到在 线程组右键的监听器中可以看到增加了很多内容,在现有的项目中增加jp@gc - PerfMon Metrics Collector,作为监控服务器端的数据。
4. 增加了jp@gc - PerfMon Metrics Collector之后,在其中Add Row,增加需要监控的数据信息,比如Cpu,Memory,Disks/IO,TCP等之类的信息,端口默认为4444,可以修改,但是需要确认的是来自服务器端是否4444已经被占用。至此,客户端已经配置完成。
5. 在服务器上解压ServerAgent-2.2.1.zip
linux服务器上解压: unzip ServerAgent-2.2.1.zip
6. 启动服务sh startAgent.sh --udp-port 0 --tcp-port 1234
注意端口尽量配置一个独立的,例如1234
这样环境就配置好了,在测试机器上,点击启动就可以开始接口的测试和压力测试工作了,当然在选择的jp@gc - PerfMon Metrics Collector也可以看到来自服务器的性能信息。
上图片,更直观一些。