gpt4 book ai didi

rabbitmq - 从 AMQP 迁移到 Amazon SNS/SQS - 需要了解概念

转载 作者:行者123 更新时间:2023-12-04 16:38:26 25 4
gpt4 key购买 nike

我在 RabbitMQ 和 AMQP 协议(protocol)方面经验丰富,并且已经构建了一个包含命令、请求和事件模式的系统。

现在我要构建一个在 AWS Lambda 上运行的系统,因此使用 SNS、SQS 等。我想了解这些东西之间的“映射”。

AMQP 中的交换等价物是什么?什么是路由键的等价物?

如何在 SNS 和 SQS 中为扇出、直接和主题​​交换(或类似)设置队列绑定(bind)?

其他人是如何处理这个问题的?在我看来,RabbitMQ 是一个为满足消息总线通常需求而构建的工具,其中 AWS 提供 block ,您必须自己设置/构建功能。我对吗?

最佳答案

What are the equivalent to an exchange in AMQP?



最接近的概念可能是 SNS,因为您可以配置一个 SNS 主题以发布到 n 个 SQS 队列。然后,当您写入该主题时,每个订阅的队列都会收到一条消息。如果您愿意,也可以将消息直接写入 SQS 队列。

What are the equivalent to a routing key?



没有真正的等价物。除了主题到队列的绑定(bind)之外,SNS 到 SQS 的绑定(bind)不允许任何额外的过滤/控制。您可以通过拥有多个 SNS 主题来近似路由,即每个主题都是一个“路由键”。

How to set up queue bindings for fanout, direct and topic exchanges (or similar) in SNS and SQS?


  • 扇出:写入 SNS 主题,每个订阅的队列都会收到相同的消息。
  • 直接:直接写入 SQS 队列或仅订阅了这些队列的 SNS 主题。
  • 主题:创建 SNS 主题并相应地订阅队列。

  • How did other people handle this?



    我在 AWS 消息传递之前使用了 RabbitMQ,所以我经历了相同的学习曲线。 AWS 没有提供尽可能多的交换/路由功能,但根据我的经验,您可以通过 SNS 主题和 SQS 队列的某种组合来获得足够接近。

    关于rabbitmq - 从 AMQP 迁移到 Amazon SNS/SQS - 需要了解概念,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46880229/

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