简介Tsung 是一个压力测试工具,可以测试包括HTTP, WebDAV, PostgreSQL, MySQL, LDAP, and XMPP/Jabber等服务器。针对 HTTP 测试,Tsung 支持 HTTP 1.0/1.1 ,包含一个代理模式的会话记录、支持 GET、POST 和 PUT 以及 DELETE 方法,支持 Cookie 和基本的WWW 认证,同时还支持 SSL。
安装在http://tsung./下载Tsung,最新版本是Tsung 1.4.2
由于tsung需要erlang支持,使用以下命令安装erlang环境及其依赖项
编译Tsung
为服务器建立配置文件默认的配置文件存在于 ~/.tsung/tsung.xml 中,对命令行不熟悉的同学可以用ctrl+h把这个隐藏文件夹显示出来. 从示例配置中复制需要进行测试的配置 /tsung/examples/jabber_register.xml 示例配置代码如下: <?xml version="1.0"?> <!DOCTYPE tsung SYSTEM "/usr/share/tsung/tsung-1.0.dtd"> <tsung loglevel="notice" dumptraffic="false" version="1.0">
<clients> <client host="localhost" use_controller_vm="true"> </client> </clients> <servers> <server host='127.0.0.1' port='5222' type='tcp'/> </servers>
<!-- register 200000 users in less than 15 minutes --> <load> <arrivalphase phase="1" duration="15" unit="minute"> <users maxnumber="200000" interarrival="0.0025" unit="second"></users> </arrivalphase> </load> <options> <option type="ts_jabber" name="global_number" value="5"></option> <option type="ts_jabber" name="userid_max" value="200000"></option> <option type="ts_jabber" name="domain" value=""></option> <option type="ts_jabber" name="username" value="tsung"></option> <option type="ts_jabber" name="passwd" value="tsung"></option> </options> <sessions> <session probability="100" name="jabber-example" type="ts_jabber">
<request> <jabber type="connect" ack="local"></jabber> </request>
<request> <match do="abort" when="match">error</match> <jabber type="register" ack="local" id="new"></jabber> </request>
<request> <jabber type="close" ack="local"></jabber> </request>
</session> </sessions> </tsung>
修改为需要测试的服务器的地址 <servers> <server host='127.0.0.1' port='5222' type='tcp'/> </servers>
添加 maxusers 配置,如果不配这个参数创建用户到1000左右就不在创建了 <clients> <client host="localhost" use_controller_vm="true" maxusers ="30000"> </client> </clients>
这个配置的含义是,为服务器创建20000 个用户, 其中用户名为tsungXXX , 密码为 tsungXXX, 其中XXX 为1到userid_max每次步进值为1. <options> <option type="ts_jabber" name="global_number" value="5"></option> <option type="ts_jabber" name="userid_max" value="200000"></option> <option type="ts_jabber" name="domain" value=""></option> <option type="ts_jabber" name="username" value="tsung"></option> <option type="ts_jabber" name="passwd" value="tsung"></option> </options>
运行 tsung -fjabber_register.xml start
运行后,tsung会将数据保存在~/.tsung/log/目录下
ps: 配置文件如果有问题或者运行中间强行关闭的情况下,有时会出现进程未关闭的情况,下次运行会出错,使用下面的命令看是否有未杀死的进程。
ps aux | grep erlang
|
|