NodeJS поддерживает пул соединений amqplib
Итак, у меня есть "работающий" набор потребителей и издателей кроликов, которые обрабатывают данные перед тем, как их переносить. Каждый потребитель выглядит примерно так, разбитый на несколько файлов
const amqp = require("amqplib/callback_api");
const logger = require("../../globalConfig/logger");
amqp.connect(
"amqp://localhost",
(err, conn) => {
rabbit.createChannel((err, ch) => {
const q = "someQ";
const newQ = "newQ";
ch.assertQueue(q, {
durable: true
});
logger.info("ACL Listener - Listening");
ch.consume(
q,
msg => {...}) // Do something before moving on
})
Тем не менее, я хотел бы преобразовать его в один пул соединений с несколькими каналами. Я также хотел бы преобразовать все это в async \ await пользователя, потому что его намного проще читать.
С моим подключением к mongoDB, оно настраивается при запуске приложения, а затем я импортирую базу данных в каждую соответствующую область. Один поддерживаемый пул соединений. Моя цель - нечто подобное здесь.
Какая лучшая практика для этого?