【发布时间】:2023-03-07 17:59:01
【问题描述】:
import * as Amqp from "amqp-ts";
const fetch = require('node-fetch');
let connection = new Amqp.Connection("amqp://admin:admin@localhost");
let exchange = connection.declareExchange("ExchangeName");
let queue = connection.declareQueue("nodejs");
queue.bind(exchange);
queue.activateConsumer(async (message) => {
const site: string = message.getContent().site;
console.log(site)
const response = await fetch(site)
console.log(response.status);
});
非常简单的小sn-p,问题是JS从RabbitMQ获取消息,然后触发请求并从RabbitMQ获取新消息。
问题在于它首先获取所有消息并触发所有请求,然后尝试解决它们 - 所以它最终只是自己获取所有消息。
什么是一个好方法(或者只是一种可行的方法)来设置 nodejs 应该允许在任何时候处理的最大消息数?
【问题讨论】: