参考资料:  http://www.centoscn.com/image-text/install/2014/0818/3503.html

       http://my.oschina.net/jielucky/blog/167405

      http://blog.csdn.net/bxc168/article/details/6020683

需要用到的软件包:

openfire : wget -c http://download.igniterealtime.org/openfire/openfire_3_9_3.tar.gz

要用的软件包有第三个软件包,第四个和第五个软件包

1.在终端先执行,输入

yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel

2.再执行,输入

yum install perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker

3.接着执行,输入

yum -y install perl

4.然后再执行,输入(可能会出现not found什么的,先不管)

yum -y install gnuplot

先贴张图:

5.先安装erlang,解压第三个软件包(我是解压到usr目录下面了,上图中的otp_src_R16B01),输入

tar -zxvf otp_src_R16B01.tar.gz -C /usr

6.配置安装,先cd到解压后的文件夹中,cd之前先确认你现在所在的文件路径是哪里,可以使用pwd查看你的所在路径,输入

cd otp_src_R16B01

再配置安装(我是直接配置到usr目录下面了,配置完后会生成一个文件夹,上面图中的erlang),输入

./configure --prefix=/usr/erlang

make && make install

7.安装tsung,解压第五个软件包(我也是解压到usr文件夹下了,上面图中的tsung-1.5.0)输入

tar -zxvf  tsung-1.5.0.tar.gz -C /usr

8.cd到tsung-1.5.0文件夹中,cd之前先确认你现在所在的文件路径是哪里,可以使用pwd查看你的所在路径,输入

cd  tsung-1.5.0

9.配置tsung ,(我的路径直接设置在usr中,上图中的tsung),输入

./configure --prefix=/usr/tsung --with-erlang=/usr/erlang   (这个地方的路径写你自己解压配置的路径,配置的过程中出现是否确认的时候输入y进行确认即可)

make && make install

10.检查tsung是否安装成功,输入

tsung -v

一般会报错是因为没有配置路径变量

11.配置tsung路径变量,输入

vim /etc/profile

编辑profile文件,在最后添加第九步中的tsung中bin目录如图(我配置了java的jdk变量,所以直接在后面添加:/usr/tsung/bin,冒号也要添加,如下图)

编辑完之后,保存(先按Esc,然后再输入:wq  ,保存即可)

12.应用配置,输入

 source /etc/profile

13.再次检查tsung 是否安装成功,输入

 tsung -v   

如果安装成功,则会显示

14. 安装perl的Template,解压第四个软件包,我的是解压到usr目录下面了,如图中的Template-Toolkit-2.24,输入

tar -zxvf  Template-Toolkit-2.24.tar.gz -C /usr

15. cd 到Template-Toolkit-2.24目录下,输入

 cd Template-Toolkit-2.24

16.再进行配置,输入

perl Makefile.PL

make 

make test

make install

17.这个时候再输入第四步中的命令,输入

yum -y install gnuplot

如图显示

18.这个时候输入tsung tart 会报错,说root/.tsung/tsung.xml文件不存在,所以先创建目录,输入

cd

19.到root目录后创建一个  .  开头的文件,创建完成后可以在FTP中查看,在FTP中要手动输入那个路径/root/.tsung就会进入这个隐藏的文件夹。输入

mkdir ~/.tsung

20.自己到网上找一个tsung.xml放入刚才创建的那个文件夹中,下面是我的tsung.xml文件

 <?xml version="1.0"?>
<!DOCTYPE tsung SYSTEM "/root/tsung-1.5.0/tsung-1.0.dtd">
<tsung loglevel="notice" version="1.0">
<clients>
<client host="localhost" use_controller_vm="true" maxusers='100000'></client>
</clients>
<servers>
<server host=" " port="6222" type="tcp"></server>
</servers>
<load>
<arrivalphase phase="1" duration="15" unit="minute">
<users maxnumber='100000' interarrival="0.0025" unit="second"></users>
</arrivalphase>
</load>
<options>
<option type="ts_jabber" name="global_number" value="100000"></option>
<option type="ts_jabber" name="userid_max" value="100000"></option>
<option type="ts_jabber" name="domain" value=" "></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="no_ack"></jabber>
</request>
<thinktime value="3"></thinktime> <transaction name="authenticate">
<request> <jabber type="auth_get" ack="local"></jabber> </request>
<request> <jabber type="auth_set_plain" ack="local"></jabber> </request>
</transaction>
<request>
<jabber type="presence:initial" ack="no_ack"/>
</request>
<thinktime value="20000"></thinktime> <transaction name="online">
<request>
<jabber type="chat" ack="no_ack" size="16" destination="online"></jabber>
</request>
</transaction>
<thinktime value="3"></thinktime> <transaction name="offline">
<request> <jabber type="chat" ack="no_ack" size="16" destination="offline"></jabber> </request>
</transaction>
<thinktime value="30"></thinktime>
<!-- <transaction name="close">
<request>
<jabber type="close" ack="no_ack"></jabber>
</request>
</transaction> -->
</session>
</sessions>
</tsung>

有一点儿要注意,上面代码中的第二行,

<!DOCTYPE tsung SYSTEM "/usr/tsung-1.5.0/tsung-1.0.dtd">这里要写你自己的路径
client 和host分别填写服务器的hostname和IP地址,我的端口号是6222

启动,输入

tsung start 

查看OPENFIRE控制台:

会生成一个日志,如图

21.生成报告,要用到tsung_stats.pl,该文件在/usr/tsung/lib/tsung/bin,我的是usr,复制到/usr/tsung/bin目录下,输入

cp /usr/tsung/lib/tsung/bin/tsung_stats.pl -R  /usr/tsung/bin

22.配置环境变量,同11步,在后面添加    :/usr/tsung/bin   保存.

23.Ctrl+C ,停止之后,cd 到日志目录下面的文件夹/root/.tsung/log/20140828-1922 输入

 cd /root/.tsung/log/20140828-1922 

24.生成报告,输入

 cd 20140828-1922/

 tsung_stats.pl

25.然后输入

ls

可以看到有文件生成,用FTP把这个文件夹down下来,就可以看到报告了。你想要的数据应该都在里面了。

上面的图是昨天测试的,下面这幅是今天测试的,之前配置有问题就改了,好像2W8是正常的。我的是4G内存,分配了3G多给OF

LINUX 安装tsung 对OPENFIRE 进行压力测试的更多相关文章

  1. Windows和Linux的Jmeter分布式集群压力测试

    Windows的Jmeter分布式集群压力测试 原文:https://blog.csdn.net/cyjs1988/article/details/80267475 在使用Jmeter进行性能测试时, ...

  2. linux环境下使用jmeter进行压力测试

    linux环境下使用jmeter进行压力测试 linux环境下使用就meter进行压力测试: linux环境部署: 在Linux服务器先安装jdk: 2.以jdk-8u172-linux-x64.ta ...

  3. Linux下四款Web服务器压力测试工具(http_load、webbench、ab、siege)介绍

    一.http_load程序非常小,解压后也不到100Khttp_load以并行复用的方式运行,用以测试web服务器的吞吐量与负载.但是它不同于大多数压力测试工具,它可以以一个单一的进程运行,一般不会把 ...

  4. linux nginx常见问题及优化,压力测试,tomcat服务器优化

    nginx常见问题 nginx优化全局配置优化[root@web2 nginx]# vim conf/nginx.confuser nobody;worker_processes 1;(与cpu核心数 ...

  5. 基于TSUNG对MQTT进行压力测试-测试结果

    一.TSUNG压测前概念温习 https://www.cnblogs.com/lingyejun/p/7898873.html 二.TSUNG在服务器上的安装步骤 Tsung压测时总连接数 = 本机可 ...

  6. 性能测试工具--SIEGE安装及使用简介 siege压力测试

    官方网站http://www.joedog.org/ 概述 Siege是一个多线程http负载测试和基准测试工具.它有3种操作模式: 1) Regression (when invoked by bo ...

  7. 基于TSUNG对MQTT进行压力测试-基础概念温习

    [单台Broker压测结果]请移步另一篇博客:http://www.cnblogs.com/lingyejun/p/7941271.html 一.TCP报头部中的SYN.FIN.ACK: ACK : ...

  8. Tsung压力测试:Openfire

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

  9. WebBench----简洁优美的网站压力测试工具

    [root@c webbench]# webbench -c 10 -t 20 http://www.baidu.com/Webbench - Simple Web Benchmark 1.5Copy ...

随机推荐

  1. Oracle备份与恢复:RMAN

    今天第一次学习RMAN的使用.先登录系统: 数据库未启动,rman命令不能执行.在rman下 也可以 startup . 全库备份的命令:backup  database 查看备份集. 下面模拟,数据 ...

  2. Python安装pip3常见问题

    安装pip3 1.安装 zlib组件: 安装完成后,执行命令 python3 -m pip install redis,报错: RuntimeError: Compression requires t ...

  3. [Java] static, final

    1.静态成员 静态成员独立于类的对象,先于对象的存在而存在.无论创建了类的多少个对象,静态成员都只有一个实例空间.一个静态变量被同一个类的所有对象共享.当改变了其中一个对象的静态变量时,其余对象的静态 ...

  4. 洛谷P1466集合——背包

    题目:https://www.luogu.org/problemnew/show/P1466 水题,注意开long long; 代码如下: #include<iostream> #incl ...

  5. JAVA Synchronized (二)

    一,介绍 本文介绍JAVA多线程中的synchronized关键字作为对象锁的一些知识点. 所谓对象锁,就是就是synchronized 给某个对象 加锁.关于 对象锁 可参考:这篇文章 二,分析 s ...

  6. ASP.NET Core:创建一个Core项目

    ylbtech-ASP.NET Core:创建一个Core项目 1.返回顶部 1. 2. 3. 4.         5. 2.返回顶部 1.新建Razor页面 2. 3. 4.Abc 4.1.Abc ...

  7. Drools6:规则互斥

    在Drools中,有的时候会出现一种情况,一个事实Fact,满足了两个规则. 比如Fact的POJO是下面的 public class Message { public static final in ...

  8. Android中shape的使用 (转载)

    转自:http://blog.csdn.net/ekeuy/article/details/12349853 在看很多开源代码中都使用到了shape,我看代码的时候一般都一带而过了,没有仔细去研究,这 ...

  9. 20170412-sl

    force n实力,武力 v强迫 ---------------20170413-sl----------------------- discard   n/v 放弃 fetch n/v 拿,取 pu ...

  10. hdoj1106

    果然...这种一条字符串的处理,还是不熟练,居然wa了四次--. 预处理预处理!!!!: 然后中间对条件的确定,标记的改变+预处理,不够严谨啊!!! #include<cstdio> #i ...