OpenFire源码学习之三十二:使用Tsung测试openfire(下)

Tsung使用

由于我们只是对openfire进行测试,因此我们主要讲解利用jabber_register.xml在openfire上面注册用户,以及利用jabber.xml模拟用户登录openfire上线、离开、会话操作的压力测试。

注册用户

1、执行以下命令进入到安装目录下的examples目录:

# cd /usr/local/tsung/share/doc/tsung/examples/

2、修改jabber_register.xml文件

3将修改后的jabber_register.xml放到/usr/local/tsung目录下

先进入tsung的bin目录下,找到tsung执行的shell脚本文件

# cd /usr/local/tsung/bin

4、执行tsung脚本以驱动执行我们修改好的jabber_register.xml脚本,实现向openfire添加用户

# ./tsung –f  /usr/local/tsung/jabber_register.xml start

5、查看openfire

登陆用户模拟发送消息

利用jabber.xml模拟用户登录openfire后执行上线、离开、忙碌、下线、发送消息等操作

1、修改jabber.xml文件(存储路径/usr/local/tsung/share/doc/tsung/examples/)

1)模拟用户仅有上线、下线、发送消息的操作时jabber.xml配置如下:

2)模拟用户含有上线、离开、忙碌、下线、发送消息操作时jabber.xml配置如下:

2、将修改后的jabber_register.xml放到/usr/local/tsung目录下:

3、 执行jabber.xml模拟用户上线、下线、发送消息等操作

# ./tsung –f  /usr/local/tsung/jabber_register.xml start

4、查看用户状态(登录openfire查看、或者登录spark查看)

若要查看是否成功发送消息则要使用spark聊天工具(可以去openfire官网下载)

1)登录openfire查看:

2)登录spark聊天工具查看

若使用spark查看其他人员状态时,必须人员双方相互注册为好友才能看到对方的状态变化,若仅验证消息接收,则无需注册好友

spark注册好友步骤如下:

a.点击主界面的“联系人”à选择添加联系人

b.弹出的添加联系人窗口中,输入用户帐号,再点击右边图标添加域名,最点击添加按钮,只有当对方登录spark后在收到的好友请求提示框中,接受了申请,才算正式注册好友成功。

c.已注册成功好友与尚未验证的好友状态显示如下:

d.利用spark查看好友状态效果如下:

e.利用spark查看消息接受的效果如下:

生成报表

启动Tsung后,Tsung会输出log的存放路径

等待测试完毕,进入log目录(只有输出了log日志才会自动log目录,默认路径:/root/.tsung/log)

#cd /root/.tsung/log/20120329-2234(路径也可以这样写:~/.tsung/log/)

# /usr/local/tsung/lib/tsung/bin/tsung_stats.pl (生成统计图表)

注意:一定要先进入log目录,才能生成统计图表。

查看统计图表方法:

使用ssh工具,将/root/.tsung/log/20120329-2234/r目录下的统计图表文件report.html下载到本地的Windows操作系统上进行查看。

用IE或firefox等浏览器打开产生的html文件,就能查看本次测试的结果(参数含义见后面说明):

Tsung相关的资料来源于:

http://wenku.baidu.com/link?url=SXkEsiMcpfqhM3IdT5ZZ97aNTmwfO_74dvJoNSWoCp2FIyudzpd1uBSgh2ccFJS6hkMjMIYmn5X4JEcEKOE58qJjWEKUdbbk30Qv5_C6Pqe

时间: 2024-08-01 00:10:18

OpenFire源码学习之三十二:使用Tsung测试openfire(下)的相关文章

OpenFire源码学习之十二:HttpBind&Script Syntax

HttpSessionManager 该类管理所有通过httpbing连接到openfire的议定.它是一个同步http的双向流 http://www.xmpp.org/extensions/xep-0124.html 构造方法:HttpSessionManager() 配置一个汇集执行者对异步路由传进来的数据的默认大小配置默认为60秒 注意:在默认情况下,服务支持最大254个客户端.这时候BOSH 承载着非常大的负荷,那么这就需要额外的分配一些线程池容量以供客户端及时入站点. public H

(转)OpenFire源码学习之十:连接管理(上)

转:http://blog.csdn.net/huwenfeng_2011/article/details/43415827 关于连接管理分为上下两部分 连接管理 在大并发环境下,连接资源 需要随着用户并发访问量的增加而增加,所以可伸缩的连接资源就是支持大访问量的关键技术.openfire系统通过增加独立部署的连接管理器程序提高并发的能力,连接管理的前端是一台负载均衡设备,它负责把用户访问分配到指定连接管理器,多台连接管理器在访问服务器.使用连接管理器后,服务器的连接池是提供给连接管理器连 接,

OpenFire源码学习之三:在Eclipse中构建源码

源码搭建 下载地址: 地址:http://www.igniterealtime.org/downloads/source.jsp 环境准备 第1步:  在官网上在下最新源码,这里是3.8.1.解压后得到如下图所示: 第2 步: 在IDE工具上新建一个java普通工程命名openfire 第3步: 将解压后的openfire_src目录的下的所有文件源码复制到此项目下,例图所示 这里稍等片刻后,看到如下效果图: 上图中在工程上出现了错误信息报告,不用着急.原因是刚导入的项目还有些jar包没有加进来

OpenFire源码学习之十八:IOS离线推送

IOS离线推送 场景: 如果您有IOS端的APP,在会话聊天的时候,用户登陆了但可能会退出了界面.这时候其他终端给目标端发送消息时候,消息可以发送到IOS的推送服务器.用过QQ的都知道,你会有哦一条消息在您的主屏上展示.这个就是利用了IOS的推送服务器呢.那么openfire只需要判断用户不在线的时候将消息推送给IOS端. 苹果服务器的消息推送都需要手机的唯一标志,也就是唯一的终端设备号.那么IOS端在登陆的时候需要将该手机的设备号传递给OF服务器.这个传递很简单,您可以自定义发送IQ消息.也可

OpenFire源码学习之十九:在openfire中使用redis插件(上)

Redis插件 介绍 Redis是目前比较流行的NO-SQL,基于K,V的数据库系统.关于它的相关操作信息,本人这里就不做重复了,相关资料可以看这个网站http://www.redis.io/(官网).http://www.redis.cn/(中文站). 这里本人想说的是,拿Redis做openfire的缓存数据库.能够大大的提高openfire连接的吞吐量.Openfire自身在本地使用Map.Cache的方式缓存了Group.roster.MUC等信息.但是当系统用户过大的时候,需要缓存的数

OpenFire源码学习之十四:插件管理

Plugin管理 Openfire把插件模块加入到容器分为以下步骤: l 通过classloader加载lib目录下载的所有jar l 通过classloader加载dir目录下的所有文件 l 定位和加载module.xml到context l 遍历jive模块实体,负荷给定的类作为一个模块,然后启动它 Openfire插件加载流程图: Openfire的插件管理类PluginManager.加载插件的方法是loadPlugin(File pluginDir)这里的参数pluginDir是插件的

OpenFire源码学习之十五:插件开发

Plugin接口规范 插件是openfire功能的增强表现,它的主要任务: l  在XMPP协议中作为附加功能实现 l  动态修改控制管理台 l  使用openfire api作为新功能添加到服务器 Openfire里面的插件都会存放在plugins(工程目录为:src/plugins)的住目录下.使用ant工具编译后插件会打成jar包生成在target/openfire/plugins目录下.一个完整的插件应该包含以下的结构: Yourplugin/ | -plugin.xml        

(转)OpenFire源码学习之十四:插件管理

转:http://blog.csdn.net/huwenfeng_2011/article/details/43418433 Plugin管理 Openfire把插件模块加入到容器分为以下步骤: l 通过classloader加载lib目录下载的所有jar l 通过classloader加载dir目录下的所有文件 l 定位和加载module.xml到context l 遍历jive模块实体,负荷给定的类作为一个模块,然后启动它 Openfire插件加载流程图: Openfire的插件管理类Plu

(转)OpenFire源码学习之十五:插件开发

转:http://blog.csdn.net/huwenfeng_2011/article/details/43418493 Plugin接口规范 插件是openfire功能的增强表现,它的主要任务: l  在XMPP协议中作为附加功能实现 l  动态修改控制管理台 l  使用openfire api作为新功能添加到服务器 Openfire里面的插件都会存放在plugins(工程目录为:src/plugins)的住目录下.使用ant工具编译后插件会打成jar包生成在target/openfire