【问题标题】:SQS communication with servicesSQS 与服务的通信
【发布时间】:2020-01-27 08:13:16
【问题描述】:

我正在尝试了解有关微服务和特定 AWS SQS 的更多信息,但我不确定我描绘架构的方式是否正确。想知道这里是否有人可以提供帮助。

SQS 如何在两个服务之间进行通信?假设我有一个调用 userService 的客户端应用程序,它需要在将响应发送回客户端之前从 productService 获取一些数据。

SQS 在这种情况下如何工作? userService 是否需要发送消息并开始监听响应?对此是否存在阻塞问题? 这会是正确的方法吗?如果没有,对这样的用例有什么建议?

谢谢

【问题讨论】:

    标签: amazon-web-services microservices amazon-sqs messagebroker


    【解决方案1】:

    队列不适合此类服务编排场景。看看 Cadence Workflow 原生支持这么长时间运行的操作。

    【讨论】:

      【解决方案2】:

      SQS 是一种队列服务。简单的队列服务。顾名思义,它旨在简单

      您需要了解what is a queuewhy do we need queues / when it is needed

      总的来说,您的用例和问题有点过于宽泛,但我会尝试加入一个简单的

      例子:

      • 您有一项服务可以为几千名用户生成报告
      • 您有另一个服务来获取与该用户关联的所有产品/订单。
      • 您可以创建一个操作,将这些用户推送到您的队列中。这是制作人
      • 您有一个类似 [User_1],[User_2],[User_3]...[User1000] 的队列
      • 您可以配置一些主动查看队列并接收消息的机器。他们是消费者
      • 每个消费者获取消息并在本地处理它(收集与用户相关的所有产品/订单)。也许最终会通过电子邮件发送结果
      • SQS 非常适合简单、快速且可扩展的队列服务

      【讨论】:

        猜你喜欢
        • 2020-05-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-06-15
        • 1970-01-01
        相关资源
        最近更新 更多