GCM / FCM推送通知中的消息限制

时间:2016-09-23 04:24:26

标签: google-cloud-messaging firebase-cloud-messaging

我想知道Google FCM推送通知中的消息限制是什么?我正在尝试使用FCM实现示例推送通知,但不了解其步骤中提到的消息限制。没有关于它的文档。

https://aerogear.org/docs/unifiedpush/aerogear-push-android/guides/#google-setup

有人可以澄清一下这个词吗?

1 个答案:

答案 0 :(得分:3)

Throttlinghttps://stuff.mit.edu文档解释得非常好:

  

为防止滥用(例如向设备发送大量消息)并优化设备的整体网络效率和电池寿命,GCM使用令牌桶方案实施消息限制。消息在每个应用程序和每个折叠密钥的基础上受到限制(包括不可折叠的消息)。每个应用程序折叠键都被授予一些初始令牌,并且在此之后定期授予新令牌。每个令牌对发送到设备的单个消息有效。如果应用程序折叠密钥耗尽其可用令牌的供应,则新消息将缓冲在待处理队列中,直到新的令牌在定期授予时变为可用。因此,在周期性授权间隔之间的限制可能增加在短时间内发送大量消息的应用程序折叠密钥的消息传递的等待时间。应用程序折叠密钥的待处理队列中的消息可以在下一次定期授权的时间之前传送,如果由于网络和电池效率原因而被GCM捎带属于非节流类别的消息。

简单来说,我猜你可以简单地看到像漏斗这样的限制,以防止消息溢出(通常用于下游消息传递),调节消息的流入以避免泛滥。< / p>

例如,您向单个设备发送了1000条消息(还可以说所有消息都已成功发送),GCM可能会限制您的消息,以便只有少数消息可以通过或者每条消息都将被传送但不能同时传送到设备。