gpt4 book ai didi

amazon-web-services - AWS SNS : Case of multiple subscribers

转载 作者:行者123 更新时间:2023-12-04 18:02:03 27 4
gpt4 key购买 nike

我是使用AWS服务的初学者。我最近有一个要求,我想从服务1向服务2和服务3发送一些数据。因此,我想做的是,我将把通知从服务1和服务2与服务3发送到SNS。此SNS主题的订阅者。因此,多个订阅者订阅了相同的主题,并且两个订阅者都需要相同的数据。

我对AWS SNS的基本功能有疑问。如果有人可以提供帮助,那将真的很有帮助。

  • 说,有2个通知A,B被推送到SNS主题,那么两个订户都将同时收到这两个通知吗?
  • 对于相同的情况,何时从SNS主题中删除2条通知?
  • SNS是否将通知存储在某个地方?还是只是通过消息传递给订户?
  • 如果其中一个订阅者发生故障并且无法获得某些通知,将会发生什么?当它再次连接到SNS主题时,它会收到那些通知吗?还是不会收到那些通知?

  • 请提供您对上述某些问题的答案。这些确实有助于我理解SNS在内部的工作方式。

    感谢帮助。

    最佳答案

    发送到SNS主题的消息将发送给所有订户。

    Publishers send messages to topics. Once a new message is published, Amazon SNS attempts to deliver that message to every endpoint that is subscribed to the topic. (emphasis added)

    http://docs.aws.amazon.com/sns/latest/dg/PublishTopic.html



    消息实际上并没有从主题中“删除”(您可能正在考虑SQS)...但是它们也不持久。它们被发布,然后消失了。

    明显的异常(exception)- retry policies并不是真正的异常(exception)。在这种情况下,该消息已发布,并且从概念上讲已经从该主题中删除了,但是SNS仍然可以重试将其传递到特定目标。

    SNS所做的一切都是插入。订户不连接到SNS并询问消息。消息发布后,它就会发布。将来的订阅者都不会看到旧消息,也没有任何“丢失”该消息的订阅者可以回来获得该消息。

    但是... SNS fanout可以将消息发送到多个SQS队列。在这种情况下,您将队列订阅到主题,并使用队列中的消息。每个队列获取每个消息的副本,并且每个队列轮询轮询SQS时,每个队列中的一个使用者都将收到一个副本。

    SQS队列还可以提供良好的备份临时邮件保留位置。如果将SNS消息发送到其他类型的终结点(例如HTTPS或Lambda),则也可以将消息发送到SQS队列,但是在正常操作下,请不要实际轮询该队列。邮件将在 maximum message retention period之后自动从队列中清除,该字段默认为4天,但最多可以配置14天。如果主题订户出现任何问题并且消息丢失,则可以从此备份队列中检索它们,但是否则,当超时到期时,它们最终只会自行消失。队列中可以等待,未读的消息数没有限制。

    关于amazon-web-services - AWS SNS : Case of multiple subscribers,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44359995/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com