【Tsung压力测试】XMPP/Jabber服务器之注册大量用户
一、安装过程:
1.获取tsung的源码tsung-1.4.2.tar.gz,地址为:http://tsung.erlang-projects.org/dist/
2.安装依赖包
sudo apt-get install erlang erlang-src gnuplot perl libtemplate-perl
注:erlang:从源码编译 erlang 写的程序 perl:report 中的图形
3.编译安装
tar -zxvf tsung-1.4.2.tar.gz
cd tsung-1.4.2/
./configure
make
sudo make install
安装完成之后会自动在系统 path 之中,可以直接输入tsung查看即可,如果出现tsung start/stop/debug/status的信息则安装成功。
二、建立压力测试配置文件
默认的配置文件存在于 ~/.tsung/tsung.xml 中,但我们安装后会发现这个目录和文件并不存在,那就要手动来创建这个目录,操作如下:
mkdir ~/.tsung
cp /usr/share/doc/tsung/examples/jabber_register.xml ~/.tsung/tsung.xml
打开tsung.xml进行修改
vim tsung.xml
对要进行压力测试的openfire服务器信息(IP(域名)和端口)进行修改,如:
<servers> <server host='xx.xx.xx.xx' port='5222' type='tcp'/> //修改成自己的IP地址 </servers>
通过<users maxnumber…>来设置要注册的最大用户数即可
<?xml version="1.0"?> <!DOCTYPE tsung SYSTEM "/usr/share/tsung/tsung-1.0.dtd"> <tsung loglevel="notice" dumptraffic="false" version="1.0"> <servers> <server host='xx.xx.xx.xx' 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>
三、启动Tsung
用tsung start运行之后,在openfire的界面上看到正在不断增加用户
四、生成报表
//进入日志目录
cd ~/.tsung/log/20130502-1608
//运行脚本生成报表文件
/usr/lib/tsung/bin/tsung_stats.pl
五、查看生成的报表
//建立符号链接
cd /var/www
ln -s ~/.tsung/log/ tsungreport
六、测试http://localhost:81/tsungreport/report.html来访问报表
遇到的问题:
在查看openfire页面时发现正在不断的创建用户,但是创建了1000个左右的用户就结束了,但是我的目标是要创建200000个用户,解决方法如下:
(1)先修改系统的最大数限制
在/etc/security/limits.conf 最后增加:
* soft nofile 65535
* hard nofile 65535
* soft nproc 65535
* hard nproc 65535
(2)在配置文件中配置一个重要的参数maxusers
<clients> <client host="localhost" use_controller_vm="true" maxusers="60000"> </client> </clients>
最后的配置文件如下 :
<?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" maxusers="60000"> </client> </clients> <servers> <server host='xx.xx.xx.xx' 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>
相关推荐
tsung是用erlang开发的一款简单易用的压力测试工具,目前仅支持linux各版本系统安装,有tar.gz和deb两种安装文件, 目前我们测试用的是CentOS或RedHat两种操作系统,因此选择tar.gz安装文件,总的来说tsung工具有...
Tsung 是一个强大的开源负载和性能测试工具,适用于多种协议,包括HTTP、FTP、jabber/xmpp等。本文将详细讲解在Ubuntu系统上安装Tsung 1.4.1,并针对Openfire服务端进行压力和性能测试的过程。 ## 1. Tsung安装 ##...
### Tsung负载测试Tigase知识点详解 #### Tsung概述 Tsung是一款高效的压力测试...通过合理配置Tsung XML文件,可以针对不同的应用场景进行精准的性能评估,特别是在测试像Tigase这样的高性能XMPP服务器时尤其有用。
Tsung是一款开源的多协议负载测试工具,它能够模拟大量用户并发访问服务器,用于测试系统的性能和稳定性。Tsung支持多种协议,包括HTTP、HTTPS、FTP、SOAP、XML-RPC、 Jabber/XMPP、MySQL、PostgreSQL等,以及我们...
Tsung是一款开源的压力测试工具,能够模拟多个用户对各种服务器应用进行压力测试。它使用Erlang语言编写,支持多种协议,如HTTP、WebDAV、SOAP、PostgreSQL、MySQL、LDAP和Jabber/XMPP。在实际使用中,Tsung可以模拟...
它有一套完整的开源生态系统,包括各种服务器(如ejabberd、openfire)、客户端软件(如Pidgin、Spark)、库(如Libjingle、Smack)以及压力测试工具(如Tsung)。XMPP能够轻松应对从几十到数百万用户的在线量,并且...
Tsung 的设计目标是提供一个灵活、可扩展的解决方案,能够测试各种网络服务,如 HTTP、FTP、TCP、UDP、jabber/xmpp 和 MySQL 等。它使用 Erlang 语言编写,Erlang 是一种为并发和分布式系统设计的编程语言,以其容错...
Tsung不仅支持HTTP、HTTPS、SOAP、XML-RPC等Web应用协议,还支持FTP、 Jabber/XMPP、LDAP、MySQL、PostgreSQL等多种协议,这使得它成为评估各种类型应用服务负载能力的理想选择。 **Tsung的核心特性:** 1. **...
它支持多种协议,包括 HTTP、WebDAV、Jabber/XMPP、PostgreSQL、LDAP 和 MySQL,并且具备强大的分布式负载生成能力。Tsung 的主要特点包括: 1. **高效性**:单个 CPU 即可模拟数千个用户。 2. **分布式**:能够将...
Tsung是一个高度可扩展、分布式的多协议负载和性能测试工具,专为模拟大量用户并发访问系统而设计。它支持多种网络协议,包括HTTP、HTTPS、FTP、TCP、UDP、jabber/xmpp、ldap、ldap/s、SOAP、XML-RPC等,使其成为...
Tsung是一款开源的压力测试工具,它能够模拟大量用户并发访问应用系统,并收集详细的性能数据,帮助用户评估系统的可扩展性和性能瓶颈。Tsung不仅支持HTTP、XMPP等多种网络协议,还能够对数据库(如PostgreSQL、...
9. Tsung:Tsung是跨平台的网络负载和压力测试工具,适用于多种协议,包括HTTP、HTTPS、FTP、jabber/xmpp、ldap、ldap/s、mysql、mssql、odbc、soap、soap/wsa、xmlrpc等。 性能测试的目标包括但不限于: - 确定...
7. Tsung:基于Erlang的开源负载测试工具,可测试多种协议,包括HTTP、FTP、jabber/xmpp等。 8. SOASTA CloudTest:云基础的性能测试工具,支持实时性能监控,适用于大规模并发测试。 9. LoadComplete:SmartBear...
它可用于测试基于IP的客户端/服务器应用程序(支持的协议:HTTP,WebDAV,SOAP,PostgreSQL,MySQL,LDAP,MQTT,AMQP和Jabber / XMPP)的可伸缩性和性能。 可以找到用户手册: : 问题/错误加入邮件列表: : 或使用...
首先,Tsung的核心功能在于模拟大量并发用户对系统进行压力测试,从而检测系统的处理能力和在高负载下的性能表现。其工作原理主要是通过生成具有统计分布的随机用户行为,模拟真实世界中的用户活动,这包括请求间隔...
它可用于测试基于IP的客户端/服务器应用程序(支持的协议:HTTP,WebDAV,SOAP,PostgreSQL,MySQL,LDAP,MQTT,AMQP和Jabber / XMPP)的可伸缩性和性能。 可以找到用户手册: : 问题/错误 加入邮件列表: : ...
Tsung是一款强大的负载和压力测试工具,广泛应用于分布式系统,如Web服务器、数据库和其他基于网络的服务。这个插件的核心功能是帮助用户将Tsung测试完成后生成的报告转换为标记格式,并方便地复制到剪贴板,以便于...