Back to questions
Junior — Middle
98
Насколько глубоко вы ориентируетесь в RabbitMQ и его возможностях?
Answer from AI
sobes.tech AI
Я знаком с основными концепциями RabbitMQ и его возможностями, включая:
- Основы работы с очередями сообщений, обменниками (exchanges) и привязками (bindings).
- Типы обменников: direct, fanout, topic, headers и их применение.
- Основные протоколы взаимодействия, например AMQP.
- Настройка подтверждений сообщений (acknowledgements) и обработка отказов.
- Работа с очередями с долговечностью и временными TTL.
Пример простого отправителя и получателя на Node.js с использованием amqplib:
const amqp = require('amqplib');
async function send() {
const conn = await amqp.connect('amqp://localhost');
const channel = await conn.createChannel();
const queue = 'task_queue';
await channel.assertQueue(queue, { durable: true });
const msg = 'Hello RabbitMQ';
channel.sendToQueue(queue, Buffer.from(msg), { persistent: true });
console.log(" [x] Sent '%s'", msg);
setTimeout(() => { conn.close(); process.exit(0); }, 500);
}
send();
Это позволяет мне использовать RabbitMQ для организации асинхронного взаимодействия между сервисами.