2013-11-03 70 views

回答

0

他們沒有在文檔中給出數字,但它看起來存在的限制是發送消息到同一設備的頻率。因此,如果您要將消息發送到大量設備,則沒有可能發生或可能不會發生的任何節流信息。

爲了防止濫用(如發送的消息的洪水的設備)和 以優化的 設備總體的網絡效率和電池壽命,GCM實現使用令牌桶 方案消息的節流。消息在每個應用程序上受到限制,並且按關鍵基礎(包括不可摺疊消息)摺疊。每個應用程序摺疊鍵都被授予一些初始令牌,並且新的令牌週期性地被授予 。每個令牌對發送給設備的單個消息有效。如果應用程序合攏鍵耗盡其可用標記的供應,則新消息將緩存在待處理的 隊列中,直到在授予週期性的 授權時新標記變爲可用爲止。因此,在定期授權間隔之間調節可能會增加 在短時間內發送大量消息的應用程序合攏鍵的消息傳遞延遲。 由於網絡和電池效率的原因,應用程序合攏鍵的待處理隊列中的消息可能是在下一次定期授予時間之前交付的 ,如果它們是 與GCM 屬於非限制類別的消息搭載的。

Source

0

我們一直在實現系統發送GCM推,我們從來沒有與節流郵件問題,目前我們正從一臺服務器(使用多線程)發送500K〜消息/分鐘。

我們在配額方面遇到了一些問題,但是聯繫Google並增加了解決方案的問題。

Mateusz

+0

嗯..感謝您的回覆!我有一個問題,只有20%的成功發送,發送的消息少得多。 –

+1

您如何知道消息是否因限制而未達到?我面臨一些問題,GCM不會將我所有的消息從設備傳遞到服務器(有效載荷) – EsmaeelQash