测试工具准备:Tsung(测试),erlang(监听),gnuplot(图形)
测试环境在MAC OS下进行的。
1 Tsung安装
打开终端 输入 brew search tsung 如下图
搜到 tsung,然后 输入 brew install tsung,进行安装 如下图
(ps : 在用brew命令前,记得先 brew update下,我没有更新就被抗过)
接下来同样的方式安装 erlang 和 gnuplot
2 开始测试
配置tsung测试文件 jabber.xml,这个文件在 tsung安装目录的sample目录下有的,拿过来修改下即可,里面的配置参数 可以去官网(http://tsung.erlang-projects.org/user_manual/index.html)学习了解。
jabber.xml 代码配置如下:
<?xml version="1.0"?> <!DOCTYPE tsung SYSTEM "/usr/local/share/tsung/tsung-1.0.dtd"> <tsung loglevel="notice" version="1.0"> <clients> <client host="localhost" use_controller_vm="true" maxusers="10000"></client> </clients> <!-- Server side setup --> <servers> <server host="192.168.1.100" port="5222" type="tcp"></server> </servers> <load> <arrivalphase phase="1" duration="3" unit="minute"> <users maxnumber="10000" interarrival="0.0125" unit="second"></users> </arrivalphase> </load> <!-- JABBER parameters --> <!-- to synchronise users, use a global acknoledgement --> <options> <option type="ts_jabber" name="global_number" value="100"></option> <option type="ts_jabber" name="userid_max" value="10000"></option> <option type="ts_jabber" name="domain" value="Tracy-PC"></option> <option type="ts_jabber" name="username" value="admin"></option> <option type="ts_jabber" name="passwd" value="tigase"></option> </options> <sessions> <session probability="100" name="jabber-digest" type="ts_jabber"> <!-- 连接 --> <request> <jabber type="connect" ack="no_ack"></jabber> </request> <thinktime value="2"></thinktime> <!-- 注册 --> <request> <match do="abort" when="match">error</match> <jabber type="register" ack="local" id="new"></jabber> </request> <!-- 认证 --> <transaction name="authenticate"> <request> <jabber type="auth_get" ack="local"></jabber> </request> <request> <jabber type="auth_set_plain" ack="local"></jabber> </request> </transaction> <!-- 登录后持续300秒 --> <request> <jabber type="presence:initial" ack="no_ack" /> </request> <thinktime value="600"></thinktime> <!-- 关闭 --> <request> <jabber type="close" ack="no_ack"></jabber> </request> </session> </sessions> </tsung>
这里的 192.168.1.100 就是tigase的服务器地址。
3 在终端 cd 到jabber.xml所在目录, 再输入tsung -f jabber.xml start 进行测试,会一直在如下图的状态
这时个可以去服务端 打开 jdk的工具 jvisualvm.exe 服务端状态监控状态,如下图所示
就等测试进程结束后
在终端输入 /usr/local/lib/tsung/bin/tsung_stats.pl --stats ~/.tsung/log/20171209-1030/tsung.log生成测试报告如下图
相关推荐
"tigase-server"组件是Tigase系统的核心部分,它提供了服务器端的运行环境,处理客户端的连接和通信请求。 "Tigase开发必备组件"意味着在进行Tigase相关的开发工作时,这个组件是不可或缺的。它包含了处理连接、...
Tsung作为一款功能强大的负载测试工具,不仅可以帮助开发者了解系统的性能极限,还能辅助发现并解决潜在的性能瓶颈问题。通过合理配置Tsung XML文件,可以针对不同的应用场景进行精准的性能评估,特别是在测试像...
在Tigase中,STUN组件帮助客户端在存在NAT的情况下发现其公网IP和端口,从而改善了在内网环境下的连接性能。 4. **message-archiving**:此模块负责实现XMPP的Message Archiving规范,即存储和检索历史消息的功能。...
包括tigase的安装运行,tsung的安装运行,压测结果的信息解析等;
全面:tigase 完全实现了XMPP协议,除了全面实施的两个核心协议,它支持大多数的你可能永远都需要的扩展协议。 Tigase的MUC组件以单独的jar包,提供群组相关功能
Tigase是一款开源的XMPP服务器,被广泛应用于即时通信领域。本文旨在深入探讨Tigase的内部处理流程,特别是其核心组件及其交互机制,帮助读者更好地理解Tigase的工作原理。 #### 二、Tigase启动流程及组件初始化 #...
- **Tigase Testsuite**:一系列用于测试Tigase服务器稳定性和性能的工具。 - **Tigase Multi-User Chat Component**:提供多用户聊天功能的组件。 - **Tigase PubSub Component**:实现了消息发布和订阅机制,适用...
Tigase服务器是一款开源的XMPP(Extensible Messaging and Presence Protocol)服务器,用于构建实时通信系统,如即时消息、语音和视频通话、群聊等。它的源码是用Java语言编写的,具有高度可扩展性和模块化设计,...
Tigase Server作为一个完全开源的实现,不仅满足了基本的Jabber/XMPP协议需求,还提供了一套强大的组件架构,允许开发者根据实际需求进行功能扩展。 在源代码层面,Tigase Server的设计遵循了模块化原则,主要由...
Tigase可以作为企业内部通信解决方案,也可以搭建公共即时通讯服务。 **二、Tigase安装** 1. **系统要求**:Tigase可以在多种操作系统上运行,包括Linux、Windows和macOS。确保你的系统满足Java运行环境的要求。 ...
Tigase是一款开源的XMPP服务器,用于构建即时通讯和实时协作系统。本文将深入探讨Tigase的核心组件、插件系统以及连接器,帮助读者理解Tigase的架构和工作原理。 首先,我们来看看Tigase的核心组件。组件...
Web Chat则是Tigase生态系统中的一个组件,它允许用户通过浏览器进行即时通讯。 在描述中提到“官方下载真实有效”,这意味着你可以从Tigase项目的官方网站获取到这个Web Chat的源码或者预编译的版本,确保软件的...
* XEP-0114:Jabber Component Protocol,定义了服务器和外部组件如(MUC)或其他消息网络之间的通信。 * XEP-0133:服务管理者,允许管理员管理用户,发送消息给所有用户,改变每天登陆的欢迎消息,管理管理员账户...
XMPP,是一种基于XML的实时通信协议,广泛应用于即时消息、VoIP、视频聊天、协作工具等多个领域。Tigase服务器正是基于这一协议,通过提供高效的数据传输和强大的扩展性,使得开发者能够构建高度定制化的IM应用。 ...
通过这个压缩包,开发者不仅能学习到Tigase服务器的内部工作原理,还可以快速搭建一个本地测试环境,进行功能开发、性能优化或者问题排查。对于那些希望深入了解即时通讯服务后端实现的人来说,这是一个宝贵的资源。
Tigase是一个开源的XMPP(可扩展消息与出席协议)服务器,用于即时通讯、协同工作以及构建类似Jabber的通信平台。本文将基于文档提供的部分内容,详细介绍Tigase开发手册中的知识点。 首先,文档内容包括了多个章节...
Tigase是一个用Java编写的开源XMPP服务器,它具有高性能、高度可伸缩和模块化的特点。在构建需要处理大量并发用户和高消息吞吐量的系统时,部署一个Tigase集群变得非常必要。集群模式允许将多个Tigase服务器实例组合...
4. **测试与调试**:使用Tigase的内置日志系统和调试工具,对插件进行测试和优化。 **运维与监控:** 1. **日志管理**:配置日志级别和输出位置,便于问题排查。 2. **性能监控**:监控CPU、内存使用情况,确保...
tigase服务器在启动时会初始化并启动相关组件和插件,启动的组件或开通监听端口号或访问数据库或者创建线程池,默认有些组件和插件非必须,我们也用不到,为了避免资源浪费,需要在配置中注释这些组件。 以下是...
这个名为“tigase-server-8.0.0-b10083-dist-max.tar.gz”的压缩包,包含了构建和运行Tigase服务器所需的所有核心组件和资源,为开发者提供了一个全面的解决方案,以搭建稳定、可扩展的即时通讯平台。 Tigase ...