gpt4 book ai didi

javascript - 使用 Nestjs 监听多个 RabbitMQ 队列

转载 作者:行者123 更新时间:2023-12-05 08:16:55 27 4
gpt4 key购买 nike

我正在查看 Nestjs 文档以设置一个微服务来监听 RabbitMQ 消息。当我必须听一个队列时,这是非常直接的。如果我的微服务必须监听多个队列怎么办?我使用的是在 main.ts 文件中完成的以下方法。

await app.connectMicroservice({
transport: Transport.RMQ,
options: {
urls: ['amqp://localhost:5672'],
queue: 'q-1',
queueOptions: {
durable: false
},
},
});

现在我有多个队列,我可以调用另一个 connectMicroservice 函数来执行此操作。但是,当在我的 Controller 中使用消息时,无法告诉我的 Controller 要监听哪个队列(q-1 或 q-2)。我所知道的是,有一个 @MessagePattern 装饰器可以提及在该函数中使用什么模式,但不确定如何提及队列名称。

最佳答案

当涉及到这些类型的场景时,RabbitMQ 的内置 NestJS 微服务实现有点受限。

@golevelup/nestjs-rabbitmq package专为解决这些功能差距而构建。它为您提供了更好的集成,使您可以直观地与单个 NestJS 应用程序或微服务内的多个 RabbitMQ 交换器和队列进行交互。它还旨在为发布/订阅和 RPC 等不同的消息传递模式提供更好的支持。

免责声明:我是这个包的作者

关于javascript - 使用 Nestjs 监听多个 RabbitMQ 队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62949674/

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