我每分钟可以向 Google 的 GCM 服务发送多少个请求以避免限制我的消息?我找不到具体的数字。。
我可以每分钟发送 1k 吗?5k?10k?
我每分钟可以向 Google 的 GCM 服务发送多少个请求以避免限制我的消息?我找不到具体的数字。。
我可以每分钟发送 1k 吗?5k?10k?
他们没有在文档中给出数字,但似乎存在的限制是针对向同一设备发送消息的频率。因此,如果您要向大量设备发送消息,则没有关于可能发生或可能不会发生的任何限制的信息。
为了防止滥用(例如向设备发送大量消息)并优化设备的整体网络效率和电池寿命,GCM 使用令牌桶方案实现消息的节流。消息在每个应用程序和每个折叠键的基础上受到限制(包括不可折叠的消息)。每个应用程序崩溃密钥都被授予一些初始令牌,然后定期授予新令牌。每个令牌对于发送到设备的单个消息都是有效的。如果应用程序崩溃密钥耗尽了其可用令牌的供应,则新消息将缓冲在待处理队列中,直到在定期授予时新令牌变得可用。因此,在定期授予间隔之间进行节流可能会增加在短时间内发送大量消息的应用程序崩溃密钥的消息传递延迟。如果出于网络和电池效率的原因,GCM 将它们与属于非节流类别的消息一起搭载,则应用程序崩溃密钥的挂起队列中的消息可能会在下一次定期授予之前传递。
我们一直在实现发送 GCM 推送的系统,我们从来没有遇到过限制消息的问题,目前我们正在从 1 个服务器(使用多个线程)发送约 50 万条消息/分钟。
我们在配额方面遇到了一些问题,但联系 Google 并增加配额解决了问题。
马特乌什