10月 16

Jmeter压测DNS服务器

背景

很多场景下,Jmeter都是用作HTTP服务的压测工具。其实,得益于插件,jmeter还有很多其他的功能。其中一条就是用来发送UDP消息,UDP是一种轻量级的网络协议,它的性能一般会很高。

最常用的UDP消息,估计就是dns请求了。DNS服务器的作用是将域名解析成ip地址。 继续阅读

8月 06

mysql主从配置、原理以及性能

最近各种的性能测试,其中有一项是mysql的性能测试,目的是测试一主多从的配比下,主库插入速度到达多少时,从库就会出现延时,这样来评估一些强依赖db写的接口的性能(其实最快的还是操作缓存,其实目前也有些公司的系统已经不直接操作db,全部用缓存,然后缓存在后台慢慢和db交互)。

分析mysql的binlog得到全部的insert语句,然后使用jmeter进行压测,得到的结论有下面几条:

  1. 线上的真机mysql服务器,内存60G,ssd硬盘,insert速度可以达到8000条/秒。
  2. 拓展从库几乎不影响主库的插入速度,平均插入时间为1毫秒
  3. 拓展从库,主库机器的网卡流量会增加,cpu、负载会上升,但不是很明显。
  4. 当插入速度在3800左右时,主从开始出现延时。

继续阅读

5月 12

jmeter命令行模式运行,实时获取压测结果

jmeter很小,很快,使用方便,可以在界面运行,可以命令行运行。简单介绍下命令行运行的方式:

    sh jmeter.sh  -n -t my-script.jmx -R 10.6.5.31,10.6.5.35,10.6.5.36,10.6.5.37,10.6.5.72 -l 8.jtl

上面一条命令应该可以满足大部分需求。

    -n:使用命令行模式运行
    -t:指定要运行的jmx脚本
    -R:指定使用那些slave节点压测
    -l:压测记录保存在哪里

使用-R指定节点时,当然要首先在这些节点上启动jmeter-server的服务,-l指定日志,jmeter运行过程中 继续阅读

3月 23

Android CPU耗电量测试

Android CPU耗电量测试

在测试Android app时,不仅仅要关注app的功能,也好关注app的性能指标,cpu、内存、流量、电量等。简单介绍下电量测试中的cpu耗电。

影响耗电的因素

  • CPU
  • Screen
  • Network (3G/wifi)
  • sensor & gps
  • WakeLock

继续阅读

12月 16

JMeterPluginCMD命令行工具生成png图片和csv统计文件

JMeterPluginCMD命令行工具生成png图片和csv统计文件

Jmeter是个纯java的开源的轻量级性能测试工具,功能强大。因为是轻量级的,与loadrunner相比,报告统计的相对较少。不过有jmeter的插件-JMeterPlugins,可以提供不少其他的报告,包括各种响应时间、吞吐率、线程等的变化曲线等http://www.yeetrack.com/?p=858

并且这个插件提供了命令行工具,可以将我们看到的各种曲线,各种报告统计成png图片,或者csv文件。这样我们就完全可以通过命令行来运行jmeter,生成jtl文件,然后在解析jtl文件,产生各种报告,或者展示到网页,或者插入到数据库,等等。 继续阅读

9月 01

Linux监控工具munin的安装和配置

〇、摘要

munin是用于Linux系统(也可以监控windows系统)的监控软件。munin除了可以监控系统的各项数值之外,最大的好处是可以自己编写插件自定义监控需要的数值。整个系统的架构简单明了,操作方便。如果是使用Debian或者Ubuntu安装,安装过程也非常简单。munin除了可以监控结果,也可以设置报警。对于我个人对性能测试的工作来说,是个非常好的工具。 继续阅读

6月 09

Jmeter-maven-plugin高级配置之分布式设置

通过<remoteConfig>标签来设置远程机器

使用jmeter Gui时可以很方便的配置远程节点,来分布式地压测,具体方法,不在描述。现在来说使用jmeter-maven-plugin这个插件如何配置分布式。

通过这个<startServersBeforeTests>标签,可以将–runremote命令发送到jmeter.properties中配置的节点机器上,来开启远程服务。

通过这个<stopServersAfterTests>标签,可以将–remoteexit命令发送到jmeter.properties中配置的节点机器上,来关闭远程服务。

<startServersBeforeTests> 和 <stopServersAfterTests>标签可以分开使用,因此我们可以通过其他进程来开启和关闭jmeter的远程服务。 继续阅读