XMPP,向数千个jabberID发送一条消息 - jabber最终将其发送到所选JID组的随机部分

时间:2014-07-11 00:41:36

标签: ruby-on-rails xmpp tigase xmpp4r

我们有一位超级用户&#39;我们用来向选定的JID发送邮件的帐户。假设我们已经选择了我们要发送消息的消息,并且我们自己获得了大量用户JID(此时为20k)。我们在后台运行了一个deamon,每次向每个用户发送一条消息,在发送2000条消息后停止一分钟(2500 /分钟限制)。我们使用xmpp4r作为处理发送消息的客户端。每个用户都有相同的@ xmpp.address。 <{1}}在每封邮件中都是相同的。

我们的tigase日志(因为这就是我们正在使用的内容),表明这些消息实际上已经发送到jabber服务器并且一次一个地发送给适当的用户。

我们遇到的问题是,尽管一切似乎都很好,但只有部分用户真正得到了消息。 (例如,在某一点上,考虑到100个第一个发送的消息--1..20和91..100已经交付,中间的70个根本没有交付),我们在此期间改进了几个但是这仍然可能是一个线索。

我们尝试创建一个包含10000个重复JIDS的数组(几个用户的jids被重复了数千次),每个消息都被传递(并且顺序正确)。

我们已经花了几天时间尝试不同的方案,并开始用尽可能出错的想法。

知道我们可能错过了什么?

1 个答案:

答案 0 :(得分:0)

我是Tigase团队的成员。首先,我建议使用我们的在线论坛,因为这是我们通常回答问题的地方。我们可能不会在此处发布问题。

总之...

您的帖子中未包含一些详细信息。

  1. 你有什么联系方式?超过标准的XMPP连接,超过波什,还有其他什么?
  2. 你是什么意思&#34;重复的JID&#34;?你是如何复制JID的?
  3. 测试期间是否有在线发送消息的所有用户?
  4. 如果您可以在Tigase日志中看到消息,您还应该看到它发生了什么。它是否已提交给网络套接字以便传送给客户端?
  5. 你使用什么样的硬件?是否有可能服务器过载并简单地丢弃了一些消息?如果您谈论100条消息并且其中70条未交付,似乎不太可能。
  6. 您如何确实知道邮件未送达,您确定客户/用户当时已连接?