亚马逊sns / sqs离线消息APNS(Pubnub,SNS,APNS)

时间:2015-06-23 14:52:51

标签: amazon-web-services apple-push-notifications amazon-sqs pubnub amazon-sns

我正在使用其离线功能研究Amazon SNS和Pubnub以及APNS。我一直在阅读它超过10个小时。仍然没有巩固所有细节。

有没有人有使用Amazon SNS / SQS的经验,如果APNS处于离线状态,它是否会为您存储离线消息,然后在其重新联机时将其发送,因为我读到Apple APNS删除了离线仅存储的推送通知最新消息。我不确定Amazon SQS是否能够知道消息是否未通过APNS发送并排队。 (由于结构是SQS / SNS将消息发送到APNS,然后APNS发送到设备,但是如果APNS看到设备处于离线状态,那么是否存在一种机制,因此SNS / SQS知道它处于脱机状态并将这些消息排队??)

看起来APNS的有效载荷仍然受到操作系统限制为2kb甚至亚马逊SNS为256kb?

我已阅读此帖子What is advantage and disadvantage of using pubnub over Amazon Simple Notification Service (sns)?

但不确定我应该选择哪种方式,我只需要可靠的简单推送通知(当然是发送到设备),如果它处于脱机状态也会存储,并在重新联机时发送回设备。但IOS7和之前的消息有效载荷大小似乎非常低256kb,我需要至少1.5kb

另外一点,是Pubnub类似于Whatsapp类型,TCP或XMPP协议,保持连接?因为我读了那个

Apple限制iOS上的应用程序在后台运行,因此iOS开发人员可能会选择将APNS作为在应用程序在后台运行时向iOS设备提供实时通知的方法。 < / p>

所以这意味着即使我安装了pubnub,当应用程序在后台时,我也无法接收来自Pubnub的消息?由于IOS不允许Pubnub继续在后台连接其套接字?但我相信IOS应用程序可以在后台运行并保持套接字连接活着?

1 个答案:

答案 0 :(得分:0)

正如您在What is advantage and disadvantage of using pubnub over Amazon Simple Notification Service (sns)?中所读到的,PubNub实时网络和Amazon SNS都使用发布/订阅隐喻来发送和路由数据。但是他们两个解决了不同的问题,所以它实际上取决于你想要解决的问题。

PubNub明确设计用于向终端用户设备(包括智能手机,平板电脑,浏览器和笔记本电脑)提供低延迟(低于0.25秒SLA)的数据。 PubNub通过维护始终打开到每个设备的套接字连接来实现这一点,并使用此开放套接字连接以低延迟“推送”数据。 Amazon SNS不是应用内实时通知的正确工具。 Amazon SNS更类似于Tibco或Tuxedo,它们是服务器到服务器的发布/订阅系统。

PubNub的核心重点是将数据快速传输到数百万台设备。 PubNub通过广播数据工作:使用PubNub,每个电话订阅一个频道,而服务器将数据发布到该频道。因此,数以百万计的电话可以订阅PubNub复制的同一频道,并同时向每个设备传送数据(通常在1/4秒内)。

enter image description here

Apple推送通知系统(APNS)旨在一次向一台设备发送数据,但不保证延迟。当应用程序当前未被使用(即不活动)时,APNS非常适合唤醒应用程序。当APNS和PubNub一起使用时,APNS用于在不使用应用程序时向用户发出警报,并且当应用程序启动时,它连接到PubNub通道,以便在使用者的观众之间实现非常快速的连接和数据同步应用程序。

Mobile Push Notifications for APNs允许您使用PubNub移动推送通知即使设备处于脱机状态也能发送APN。这样,您就可以向iOS和Android设备提供移动推送通知,即使应用离线消息队列也可确保即使在移动连接丢失的情况下也可以发送消息。

相关问题