Tsung 安装使用初试

tsung是erlang的一个开源的一个压力测试工具,可以测试包括HTTP, WebDAV, Mysql, PostgreSQL, LDAP, and XMPP/Jabber等服务器。针对 HTTP 测试,Tsung 支持  HTTP    1.0/1.1 ,包含一个代理模式的会话记录、支持 GET、POST 和 PUT 以及 DELETE 方法,支持 Cookie 和基本的WWW 认证,同时还支持 SSL。

下载参考tsung官网:http://tsung.erlang-projects.org/

Tsung必须先安装erlang

1. 安装 erlang

1.sudo apt-get install erlang erlang-src gnuplot perl5 

2. 验证erlang是否安装成功

      erl 

Erlang R17B01 
(erts-5.7.4)[source][64-bit][smp:2:2][rq:2][async-threads:0][hipe][kernel-pool:false] 
Eshell V5.7.4(abort with ^G) 

4. 进入目标文件下载路径

cd /opt/apps 

5. 下载Tsung安装包

      wget http://tsung.erlang-projects.org/dist/tsung-1.5.1.tar.gz 

6. 解压缩安装包

chmod 777 tsung-1.5.1.tar.gz 
tar zxvf tsung-1.5.1.tar.gz 

7. 编译安装

cd tsung-1.5.1/ 
./configure tsung 
make 

在命令行中输入tsung - v 显示版本号为 Tsung version 1.5.1,说明安装成功了 

安装过程中报错:“ build main app boot script ... make: *** [priv/tsung.boot] Error 1 ”

这是由于erlang版本过低导致的,更新下erlang版本即可。 

为服务器建立配置文件

          默认的配置文件存在于 ~/.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="erlang-projects.org"></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="erlang-projects.org"></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:  配置文件如果有问题或者运行中间强行关闭的情况下,有时会出现进程未关闭的情况,下次运行会出错,使用下面的命令看是否有未杀死的进程。

相关推荐