我有一个网络服务器,它通过带有 GCM 的 PHP 通知向我开发的 Android 应用程序发送给用户。大约有 3000 名用户,一些用户每天收到大约 20 条通知。
它完美运行了 1 年多,但自 5 天以来,我发现调用“https://android.googleapis.com/gcm/send”的响应时间为 1 分钟,而不是之前的不到 1 秒。所有通知仍然到达用户。
我禁用通知发送超过 1 天。然后再次启动它,几分钟后 googleapis 像往常一样响应,但再次响应时间为 60 秒。
看起来 Google 是故意这样做的,但我不知道为什么?
最佳答案
尝试运行:
curl https://apis.google.com/
和
curl https://apis.google.com/ --ipv4
如果第二个运行得更快,只需在您的服务器上禁用 ipv6,可能您服务器的 ISP 还不支持 IPv6,这会导致 1-2 分钟的延迟,然后超时并再次切换到 IPv4。
我最近遇到的另一个问题是节流 GCM: how to avoid throttling
基本上,如果您在短时间内向同一用户发送过多消息,Google 会限制您的推送消息。这是为了“节省电池”和“带宽”(可能是他们的)...请记住,如果您想每分钟向设备发送数据超过 10 次,并且当用户实际使用该应用程序时,最好是在用户和您的服务器之间打开一个直接的 TCP 连接 :)
关于android - Google Cloud Messaging Server 响应缓慢(1 分钟),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24439002/