用两台主机坐Tigase的Tsung测试,其中1台运行Tigase,另1台运行Tsung。

1.Tigase服务器设置

tigase.conf:

#osgiEnabled=(true|false)
#osgiEnabled=false
OSGI=${osgiEnabled}
ENC="-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8"
DRV="-Djdbc.drivers=com.mysql.jdbc.Driver:org.postgresql.Driver:org.apache.derby.jdbc.EmbeddedDriver"
#GC="-XX:+UseBiasedLocking -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:ParallelCMSThreads=2 -XX:-ReduceInitialCardMarks"
#EX="-XX:+OptimizeStringConcat -XX:+DoEscapeAnalysis -XX:+UseNUMA"
JAVA_HOME="${JAVA_HOME}"
CLASSPATH=""
JAVA_OPTIONS="${GC} ${EX} ${ENC} ${DRV} -server -Xms100M -Xmx200M -XX:PermSize=32m -XX:MaxPermSize=256m -XX:MaxDirectMemorySize=128m "
TIGASE_CONFIG="etc/tigase.xml"
TIGASE_OPTIONS=" --property-file etc/init.properties --test "

增加了1行:

TIGASE_OPTIONS=" --property-file etc/init.properties --test "

参数"--test"有两个作用:(1)不加载Tigase的offline message plugin;(2)降低默认的登录级别。

init.properties:

config-type=--gen-config-def
--admins=admin@tsung213
--virt-hosts =tsung213
--debug=server
--monitoring=jmx:9050,http:9080,snmp:9060
--auth-db=tigase-auth
--user-db=mysql
--user-db-uri=jdbc:mysql://localhost:3306/tigase_db?user=tigase_user&password=123456&useUnicode=true&characterEncoding=UTF-8&autoCreateUser=true
--user-repo-pool-size=12
--comp-name-1 = muc
--comp-class-1 = tigase.muc.MUCComponent
--comp-name-2 = pubsub
--comp-class-2 = tigase.pubsub.PubSubComponent

设置好以后启动Tigase服务器,准备接受测试。

2.Tsung主机设置

测试用的jabber_register.xml文件如下,该文件用于测试注册用户时的性能。

<?xml version="1.0"?>
<!DOCTYPE tsung SYSTEM "/usr/local/tsung/share/tsung/tsung-1.0.dtd">
<tsung loglevel="notice" dumptraffic="false" version="1.0"> <!-- Tsung客户端的IP地址和端口号 -->
<clients>
<client host="localhost" use_controller_vm="true">
</client>
</clients> <!-- Tigase服务器的IP地址和端口号 -->
<servers>
<server host='10.3.93.213' port='5222' type='tcp'/>
</servers> <load>
<!-- 第1阶段,持续时间5分钟 -->
<arrivalphase phase="1" duration="5" unit="minute">
<!-- 最多注册20个用户,每10秒钟注册1个用户 -->
<users maxnumber="20" interarrival="10" unit="second"></users>
</arrivalphase>
</load> <options>
<option type="ts_jabber" name="global_number" value="20"></option>
<!-- 用户编号最大值为20-->
<option type="ts_jabber" name="userid_max" value="20"></option>
<!-- Tigase服务器域名为tsung213 -->
<option type="ts_jabber" name="domain" value="tsung213"></option>
<!-- 用户名以tsung开头,即tsung1、tsung2、...... -->
<option type="ts_jabber" name="username" value="tsung"></option>
<!-- 密码以tsung开头,即tsung1、tsung2、...... -->
<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>

设置好以后,运行/usr/local/tsung/bin/tsung -f /usr/local/tsung/share/doc/tsung/examples/jabber_register.xml start命令,开始测试。

测试结束以后,cd到/root/.tsung/log/20140827-1500文件夹,运行/usr/local/tsung/lib/tsung/bin/tsung_stats.pl,生成测试结果报告。

将生成的测试报告复制到Windows主机,用浏览器打开如下。

远程登录与Tigase服务器连接的MySQL数据库,可见虽然我们设置注册20个用户,但是由于种种原因,只注册了6个用户,这也是正常的。

Tsung测试Tigase的更多相关文章

  1. Tsung测试统计报告说明

    Tsung测试统计报告说明 **********************  report.html  *********************** 1.主要统计信息 Tsung统计数据是平均每十秒重 ...

  2. Tsung测试openfire服务器

    环境准备 安装Tsung.安装openfire.安装Spark Tsung使用 要对openfire进行压力测试,因此我们主要讲解如何利用jabber_register.xml在openfire上面注 ...

  3. 用tsung测试openfire 服务器性能

    最近公司需要做一个有聊天功能的应用,客户讲的是很宏大,用户超多,以前搞过openfire,但没有深入的去了解,就想用它来搞,而且是用 java写的,想扩展也容易些,但在性能上一直担忧,想测试一下它的性 ...

  4. Tsung测试Tcp协议的应用或接口

    利用Tsung模拟基于Tcp的业务流程,实属无奈.因ConnectManager部署在linux下,其中,Loadrunner的winsocket因不支持linux platform而无法使用,而Jm ...

  5. tsung压力测试——Tsung测试统计报告说明【转】

    1.主要统计信息 Tsung统计数据是平均每十秒重置一次,所以这里的响应时间(连接.请求.页面.会话)是指每十秒的平均响应时间: connect: 表示 每个连接持续时间: Hightest 10se ...

  6. tsung测试xmpp遇到no_free_userid

    tsung里面可以配置xmpp的参数,设置一下 <option type="ts_jabber" name="userid_max" value=&quo ...

  7. 转: Tsung:开源多协议分布式负载&压力测试工具

    Main features High Performance: the load can be distributed on a cluster of client machines Multi-pr ...

  8. tsung: an open-source multi-protocol distributed load testing tool

     ROPERTIES::type: KnowledgeBase_Cloud:END: 开源.多协议.分布式的压力测试工具   Item Summary tsung-recorder start 通过p ...

  9. 关于Tsung脚本无法停止的问题

    最近,利用tsung测试cm的时候,脚本是这样配置的: <load> 28 <arrivalphase phase="1" duration="2&qu ...

随机推荐

  1. jQuery核心技术-----------------------------------------------------()

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. Atitit usrQBM1603短信验证码规范

    Atitit usrQBM1603短信验证码规范 短信验证码扩展至短信服务和验证码服务1 主要方法1 参考模板1 短信验证码扩展至短信服务和验证码服务 主要方法 Line 27: public cla ...

  3. Atitti knn实现的具体四个距离算法 欧氏距离、余弦距离、汉明距离、曼哈顿距离

    Atitti knn实现的具体四个距离算法  欧氏距离.余弦距离.汉明距离.曼哈顿距离 1. Knn算法实质就是相似度的关系1 1.1. 文本相似度计算在信息检索.数据挖掘.机器翻译.文档复制检测等领 ...

  4. 使用(POI)SAX处理Excel文件,防止内存溢出

    POISAXReader h2:first-child, body>h1:first-child, body>h1:first-child+h2, body>h3:first-chi ...

  5. javaweb回顾第十一篇过滤器(附实现中文乱码问题)

    1:过滤器概念 过滤器就是一种在请求目标资源的中间组件,比喻把污水转换成纯净水中间需要一个污水净化设备,那么这个设备就好比一个过滤器.那么我用图来表示过滤器(可以有多个过滤器)运行的过程 2:Filt ...

  6. KendoUI系列:MultiSelect

    1.基本使用 1>.创建Input <link href="@Url.Content("~/Content/kendo/2014.1.318/kendo.common. ...

  7. python单线程爬虫code

    广度优先算法: # -*- coding: utf-8 -*- import urllib import urllib.request from bs4 import BeautifulSoup im ...

  8. Angularjs 跳转页面并传递参数的方法总结

    http://www.zhihu.com/question/33565135 http://www.codeproject.com/Articles/1073780/ASP-NET-MVC-CRUD- ...

  9. ASP.NET MVC 4.0中选择Windows 验证默认出错拒绝访问的原因和解决方案

    在VS 2012或者2013 中,根据模板创建一个ASP.NET MVC 4.0的应用程序,选择下面的模板 然后选择Intranet Application 不对源代码做任何修改,直接按下F5调试,会 ...

  10. Lua 学习笔记(四)语句与控制结构

    一.赋值与多重赋值      赋值的基本含义是改变一个变量的值或table中字段的值.Lua中允许“多重赋值”,也就是同时为多个值赋予多个变量,每个变量之间以逗号分隔.      Lua会先对等号右边 ...