1

我们有一个启用了 APNS 的 XMPP 聊天客户端。每次,其他用户的应用程序处于非活动状态时,我们都会在服务器上触发推送,以提醒其他用户他在应用程序中有未读消息。我们当前的实现是我们有一个队列,将其传递给每分钟运行的 cron 作业,该作业构建有效负载并将其转发到 Apple 服务器。现在的问题是,这花费的时间太长了,因为该应用程序是一个聊天客户端,用户希望他们会立即收到推送通知(当然延迟几秒钟是可以接受的,因为我知道即使是苹果也可能需要一个在发送推送通知时,但根据我的经验,客户端需要几秒钟才能收到它)。

现在我知道 Apple 在请求方面有限制,这与 C2DM(现在称为 GCM)不同,所以这就是为什么我们将它放在队列中,并将其传递给 cron 作业。其他应用程序正在这样做,我真的不知道他们是如何真正接近实时地做到这一点的。

以下是我的一些问题:

  • 我们需要改变我们的实现吗?(队列和 cron 作业)。
  • 拥有多个提供商是否可以解决问题?如果是,对此有何要求?
  • 是否有任何付费服务已经在这样做?有人能说出一些吗?
4

2 回答 2

1

看看城市飞艇。http://urbanairship.com

于 2012-07-31T04:12:22.053 回答
0

关于付费服务,请查看http://pushwoosh.com,他们将 API 集成作为选项之一。这可能会有所帮助。

于 2012-07-31T16:59:31.020 回答