hat*_*lla 5 notifications amazon-web-services amazon-sns
我是使用AWS服务的初学者。我最近有一个要求,我想从服务1向服务2和服务3发送一些数据。因此,我想做的是,我将把通知从服务1和服务2与服务3发送到SNS。此SNS主题的订阅者。因此,这是多个订户订阅相同主题并且两个订户都想要相同数据的情况。
我对AWS SNS的基本功能有疑问。如果有人可以提供帮助,那将真的很有帮助。
假设有2个通知A,B推送到SNS主题,那么两个订户都会收到两个通知吗?
对于同一场景,何时从SNS主题中删除2条通知?
SNS是否将通知存储在某个地方?还是只是通过消息传递给订户?
如果其中一个订户发生故障并且无法收到某些通知,将会发生什么情况?当它再次连接到SNS主题时,是否会收到那些通知?
请提供您对上述某些问题的答案。这些确实有助于我理解SNS在内部的工作方式。
感谢帮助。
发送到SNS主题的消息将发送给所有订户。
发布者将消息发送到主题。发布新消息后,Amazon SNS会尝试将该消息传递到订阅该主题的每个终端节点。(添加了重点)
消息实际上并没有从主题中“删除”(您可能正在考虑SQS)...但是它们也不持久。它们被发布,然后消失了。
一个明显的例外- 重试策略 -并不是真正的例外。在这种情况下,该消息已发布,并且从概念上讲已经从该主题中删除了,但是SNS仍可以重试将其传递到特定目标。
SNS所做的一切都是推动。订户不连接到SNS并询问消息。消息发布后,它就会发布。将来的订阅者都不会看到旧消息,“丢失”该消息的订阅者也不会回来获取该消息。
但是... SNS扇出可以将消息发送到多个SQS队列。在这种情况下,您将队列订阅到主题,并使用队列中的消息。每个队列获取每个消息的副本,并且每个队列轮询轮询SQS时,每个队列中的一个使用者都将收到一个副本。
SQS队列还可以提供良好的备份临时邮件保留位置。如果将SNS消息发送到其他某种终结点(例如HTTPS或Lambda),则也可以将消息发送到SQS队列,但是在正常操作下,请不要实际轮询该队列。在最长邮件保留期限(默认为4天)之后,将从队列中自动清除邮件,但是最多可以配置14天。如果主题订户出现任何问题并且消息丢失,则可以从此备份队列中检索消息,但是否则,它们最终只会在超时到期时自行消失。队列中可以等待,未读的消息数没有限制。
| 归档时间: |
|
| 查看次数: |
4459 次 |
| 最近记录: |