在Xmpp ejabberd服务器上使用Tsung进行的负载测试是否会创建原始数据?

时间:2020-08-04 12:21:06

标签: xmpp load-testing ejabberd tsung

我是xmpp / ejabberd和测试的新手。我为聊天应用程序设置了ejabberd xmpp服务器。 我正在使用Tsung在服务器上进行负载测试。

为此,我正在创建多个方案或会话,Tsung将在其中创建MUC并将消息发送到该MUC。

一切正常,直到我想到一个问题。

tsung进行负载测试,并且也生成报告,但是为什么tsung创建的房间和发送到这些MUC的消息没有反映在服务器上。

我已经使用ejabberd rest API检查了它。我没有看到tsung创建的任何房间。我可以确保xmpp服务器可以正常运行,因为我已经创建了会议室并从聊天应用程序发送了消息。

是不是tsung仅创建了伪数据,一旦测试完成,以后便将其删除? 或像其文档中所说的那样,它可以模拟流量。这是否意味着它不会创建任何这些数据? 还是我的Tung配置?

很抱歉,这听起来很愚蠢。

谢谢!

1 个答案:

答案 0 :(得分:1)

为什么不是由tsung创建的会议室,并且发送到这些MUC的消息未反映在服务器上。

好吧,这应该显示在ejabberd日志文件中。

除了日志,负载测试在测试后不会在ejabberd数据库中保留任何信息。那么为何不?原因很简单:默认情况下,房间是临时的,而不是持久的。当居住者加入新房间时,将创建一个房间。当最后一个房间的人离开房间时,房间会被自动摧毁。

请参见https://xmpp.org/extensions/xep-0045.html#exit

注意:如果房间不是永久性的,并且此人是最后一个离开的人,则服务部门负责破坏房间。

如您所见,有一些函数可以加入和退出房间,而无需创建和销毁它们: https://github.com/processone/tsung/blob/develop/src/tsung/ts_jabber_common.erl#L700