有没有一种方法可以将nestjscqrs与rabbitmqeventbus/queue一起使用.从命令中调度微服务处理的



我正在阅读nestjs文档,似乎没有办法使用事件总线中内置的任何其他内容。现在让我们假设我的cqrs事件想要与rabbitmq。所以两个问题:

  1. 是否可以调度将队列发送到外部事件总线的事件
  2. 从ddd的角度来看,这行吗?那么我应该把它发到哪里?从域层调度?然后,感兴趣的各方(微服务(可以监听并写入自己的数据库部分或其他内容。如果你能从人的层面解释一下,我是新来的。很抱歉,如果这是一个经常被问到的问题,但它也与nestjs有关,所以我需要一些澄清

谢谢😊

集成事件应用于通知外部服务。一个好的做法是保持外部事件总线(集成总线(独立于任何微服务。关于两个问题:

  1. 应该可以使用nestjs将事件发送到外部总线。例如:编写一个域事件处理程序,创建一个集成事件并调度它。您可以创建一个新的IntegrationBus接口,并用任何适合的技术实现它
  2. 从DDD的角度来看,这绝对是可以的。上下文映射(不同上下文如何共享数据(是DDD战略模式的一部分。通常,集成事件在应用程序层发布,在某些情况下,在基础设施层发布会更方便

以下是一些关于域和集成事件的详细信息:

https://learn.microsoft.com/en-us/dotnet/architecture/microservices/microservice-ddd-cqrs-patterns/domain-events-design-implementation

https://devblogs.microsoft.com/cesardelatorre/domain-events-vs-integration-events-in-domain-driven-design-and-microservices-architectures/

最新更新