【问题标题】:node/rabbitmq : choreography asynchronous and reponsenode/rabbitmq:编排异步和响应
【发布时间】:2021-01-05 06:32:50
【问题描述】:

您好,我有一个关于编舞的问题,

我知道它是异步的,但在这种情况下:

endPoint / addEmployee 中的申请(在哪里创建员工,必须在部门中存在),我会检查员工并在我的部门队列中发送消息以验证存在并在队列中注册以听到答案,那会是编舞吗?

或者在确认员工存在时,我是否应该已经创建并发送响应?或者我可以在使用部门队列后发送响应吗?

或者在这种情况下,编排是否正确?

【问题讨论】:

  • Gabriel 以目前的形式,真的很难理解你的问题。一张小图可能会有用。
  • 好的抱歉,我会尝试制作图表,但基本上要创建一个员工,我需要该部门存在,因此我在消息建模方面遇到困难
  • 如果我理解正确,您将收到包含创建员工信息的请求或消息。其中一个字段是部门名称或 ID。并且您想从部门服务验证此部门信息的存在。我的理解正确吗?如果是这样,我会说更简单的解决方案是在您的员工服务中保留基本的部门数据。您可以从部门服务获取部门创建、更新的事件并同步您的数据,而不是询问每个员工。
  • 就是这样,我没看懂你描述的这个目的,因为基本上我需要在我的员工服务中验证部门ID的存在,它们是不同的数据库,你可以给我一个实际的例子,你可以尽量抽象出来让我吸收,不胜感激
  • 这就像:在我的部门表中订阅(orm),在我的部门部门中,并在交换中发布?每当有附加更新等时,我会发送给交换吗?但我想知道如何将这些数据保存给我的服务员工

标签: node.js rabbitmq microservices


【解决方案1】:

如果我理解正确,您将收到包含创建员工信息的请求或消息。其中一个字段是部门名称或 ID。并且您想从部门服务验证此部门信息的存在。我的理解正确吗?如果是这样,我会说更简单的解决方案是在您的员工服务中保留基本的部门数据。您可以从部门服务获取部门创建、更新的事件并同步您的数据,而不是询问每个员工。

使用此解决方案,您将不会在服务之间产生依赖关系。您将只收听您不知道消息来自哪里的主题或队列,这与耦合完全相反。

【讨论】:

    猜你喜欢
    • 2013-10-03
    • 2018-08-29
    • 1970-01-01
    • 2014-07-22
    • 2016-04-15
    • 1970-01-01
    • 2015-11-04
    • 2017-11-23
    • 2014-08-10
    相关资源
    最近更新 更多