在Ubuntu下使用Tsung对ejabberd服务器进行XMPP压力测试。

今天研究了一下如何使用Tsung对ejabberd服务器进行压力测试,看了N篇文章以后,总结一下在Ubuntu下的安装详细步骤。

1、下载Tsung源代码:

从Tsung的官方网站下载源代码(),目前最新的是tsung-1.4.1.tar.gz,不要下载为Ubuntu封装好的deb,因为下面还要更改一处源代码才可以通过ejabberd服务器的身份验证。

2、安装Tsung的依赖组件:

1、Erlang及相关组件(必装) :sudo apt-get install erlang erlang-nox erlang-dev erlang-parsetools

2、gnuplot、perl5及template模板(如果需要生成报表的话): sudo apt-get install perl5 gnuplot libtemplate-perl

3、由于Tsung在发送stream节的时候,附带了version=’1.0’属性,导致ejabberd无法识别,所以需要更改tsung_jabber_common.erl的这行代码,

xmlns=’jabber:client’ version=’1.0′ xmlns:stream=’http://etherx.jabber.org/streams’>"改为xmlns=’jabber:client’ xmlns:stream=’http://etherx.jabber.org/streams’>"

4、编译Tsung

./configure

make

sudo sudomake install

5、编写tsung.xml配置文件

~/.tsung/tsung.xml为tsung默认的配置文件,在/usr/share/doc/tsung/examples/中有一些示例文件,可以参考jabber.xml文件来编写自己的tsung.xml,下面是一段测试ejabberd服务器登录的测试脚本

<?xml version="1.0"?><!DOCTYPE tsung SYSTEM "/usr/share/tsung/tsung-1.0.dtd"><tsung loglevel="notice" version="1.0"> <clients><client host="localhost" use_controller_vm="true"></client> </clients> <!– Server side setup –> <servers><server host="127.0.0.1" port="5222" type="tcp"></server> </servers> <load><arrivalphase phase="1" duration="1" unit="minute"><users interarrival="2" unit="second"></users></arrivalphase> </load> <!– JABBER parameters –> <!– to synchronise users, use a global acknoledgement –> <options><option type="ts_jabber" name="global_number" value="100"></option><option type="ts_jabber" name="userid_max" value="10000"></option><option type="ts_jabber" name="domain" value="mydomain.org"></option><option type="ts_jabber" name="username" value="user"></option><option type="ts_jabber" name="passwd" value="pass"></option> </options> <sessions><session probability="100" name="jabber-example" type="ts_jabber"><request><jabber type="connect" ack="no_ack"></jabber></request><thinktime value="2"></thinktime><transaction name="authenticate"><request><jabber type="auth_get" ack="local"></jabber></request><request><jabber type="auth_set_plain" ack="local"></jabber></request></transaction><transaction name="close"><request><jabber type="close" ack="no_ack"></jabber></request></transaction></session> </sessions></tsung>

6、运行Tsung

tsung start 或者 tsung -f myconfig.xml start

运行后,tsung会将数据保存在~/.tsung/log/目录下

7、生成报表

tsung运行完成后,进入~/.tsung/log/***/目录,然后运行 /usr/lib/tsung/bin/tsung_stats.pl,,会生成html报表页面。

如果说对云南有进一步的了解的话就是鲜花。

在Ubuntu下使用Tsung对ejabberd服务器进行XMPP压力测试。

相关文章:

你感兴趣的文章:

标签云: