【问题标题】:Eventbridge - Use FIFO SQS for deduplicationEventbridge - 使用 FIFO SQS 进行重复数据删除
【发布时间】:2022-04-09 05:39:43
【问题描述】:

我需要一些事件只发送一次,但我无法控制消息处理器(因此我无法使接收者具有幂等性)。

是否可以将事件从 Eventbridge 路由到 FIFO SQS 以进行重复数据删除,并从 FIFO sqs 路由到接收方(其他帐户为 lambda?这会实现精确一次传递吗?

【问题讨论】:

    标签: amazon-web-services amazon-sqs aws-event-bridge aws-sqs-fifo


    【解决方案1】:

    EventBridge (EB) 有at-least-once 传递,这意味着您可以获得多个相同类型的事件。但是,如果这不是问题,并且您唯一关心的是 SQS,那么是的,EB supports SQS FIFO 目标:

    EventBridge 可让您设置各种目标,例如 Amazon SQS 标准和 FIFO 队列,它们以 JSON 格式接收事件。

    【讨论】:

      【解决方案2】:

      这是可能的,但您必须配置 FIFO 队列。它可以根据消息的正文检测重复项。看到这个docs

      FIFO 队列可帮助您避免将重复发送到队列。如果你重试 5 分钟重复数据删除间隔内的 SendMessage 操作, Amazon SQS 不会将任何重复项引入队列。

      该链接继续说明需要哪些配置,因此请务必查看。

      【讨论】:

        【解决方案3】:

        当您将 SQS FIFO 设置为 EventBridge 规则的目标时,您能否根据负载内容动态设置 messageGroupId?

        从当前的设置中我看到它只能是一个硬编码的值。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-10-20
          • 2020-06-22
          • 1970-01-01
          • 2019-06-02
          相关资源
          最近更新 更多