这周准备对openfire3.6.4进行压力测试,从一些资料显示TSung对jabber协议有较好的支持,因此今天下载安装并初步对压力进行测试,主要的步聚如下:
1、从官方网站下载安装包(我的电脑是ubuntu ,所以下载的是Deb包)。 目前官方最新版本为1.3.3, 下载地址为:
http://tsung.erlang-projects.org/dist/ubuntu/tsung_1.3.3-1_all.deb
下载后使用 sudo dpkg -i tsung_1.3.3-1_all.deb 进行安装,报错, 找不到依赖包erlang-nox,
继续使用 :sudo apt-get install erlang-nox
sudo apt-get -f install
安装所有需要依赖的包。
安装成功后运行 tsung -v 显示版本号:Tsung version 1.3.3 表明安装成功。
2、建立压力测试配置文件对服务器进行配置。
默认的配置文件存在于 ~/.tsung/tsung.xml 中。
从示例配置中复制需要进行测试的配置 /usr/share/doc/tsung/examples/jabber_register.xml
示例配置代码如下:
对要进行压力测试的openfire服务器信息(IP和域名)进行修改:
由于第一次配置有问题就运行了 tsung start &, 接下来运行就一直报错:
刚开始以为是注册用户时有重名的用户所至,但检查服务器上一个用户也没有创建成功,因此排除,经过一段时间的排错,发现是因为前一个进程没有关闭所致,因此杀掉原来的进程:
再运行 tsung start , 终于看到输出到日志文件了!
检查服务器用户,正在不断的创建用户。嗯?怎么创建了1000个左右的用户就结束了呢?我的目标是要创建200000个用户呀,查看日志是因为用户open file 最大数限制, 修改系统最大连从接从1024到65535 ,无效!
后来才发现配置文件中还有一个重要的参数:maxusers, 于是增加到配置文件中:
这次终于大功告成。 用户源源不断地创建到了openfire 中。
3、压力测试完成后, 需要出统计报表进行报告:
进入日志的目录:cd ~/.tsung/log/20101213-09:32
运行脚本文件: /usr/lib/tsung/bin/tsung_stats.pl
报错,不能生成图片(曲线图):
于是安装生成图片的依赖包:
sudo apt-get install gnuplot
图片生成了, 但还是报模板找不到:
继续安装缺少的模板依赖:
sudo apt-get install perl5
sudo apt-get install libtemplate-perl
安装成功,html的报表也出来了, 到此为止。
4、接下来进行了40W用户的注册测试,以及在线用户测试。压力是出来了, 接下来的问题是openfire服务器上文件打开数限制导致的错误了,继续进行。。。。