向所有用户发送GCM消息(不使用主题)

3
我有以下难题:
  • 我需要每5分钟(或更短间隔)向我的应用程序的所有用户发送心跳消息
  • 我考虑使用主题消息,但100万个订阅者限制对我的应用程序不可接受
  • 因此:唯一剩下的可能是以1000个一批发送消息
  • 这真的很耗费资源
现在我的问题是: 如何使这个分批发送过程真正高效?是否已经有一个好的解决方案了,最好是在node.js中?
谢谢, Sebastian

@ujwaldhakal 的意思是:我需要发送一个“心跳”消息,这个消息永远不会显示给用户。它的作用只是为了保持客户端的活动状态。 - Sebastian Walker
@Serbastian,客户端已经连接到 Node.js 的套接字,当客户端访问页面时,为什么需要这样的消息? - ujwal dhakal
@ujwaldhakal 不,我需要将Google Cloud Messaging消息发送到移动应用程序。 - Sebastian Walker
1个回答

2
您可以使用XMPP而不是HTTP。
正如Google所的那样,相对于HTTP,它的资源消耗更少:
异步XMPP的性质使您能够使用更少的资源发送更多的消息。
此外,每个应用程序(sender ID)可以拥有1000个同时连接:
对于每个sender ID,GCM允许1000个并行连接。
此外,还有一个 node-xmpp解决方案可用。

谢谢。基本上,对于XMPP来说,限制是一样的,但协议更高效,因此速度更快,对吗? - Sebastian Walker
@SebastianWalker 实际上并不一样,因为在XMPP中你需要发送1000个不同的请求,而在HTTP中只需要发送1个请求。但正如谷歌所说,它需要更少的资源。 - Ali
明白了。我在想,因为你可以一次发送消息给1000个收件人。把它搞混了。 - Sebastian Walker

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接