Junior — Middle
Qual o seu nível de conhecimento sobre o RabbitMQ e suas funcionalidades?
sobes.tech IA
Resposta da IA
Conheço os conceitos básicos do RabbitMQ e suas capacidades, incluindo:
- Fundamentos de trabalho com filas de mensagens, exchanges e bindings.
- Tipos de exchanges: direct, fanout, topic, headers e suas aplicações.
- Protocolos principais de interação, como AMQP.
- Configuração de confirmações de mensagens (acknowledgements) e tratamento de falhas.
- Trabalho com filas duráveis e TTLs temporários.
Exemplo de um simples remetente e destinatário em Node.js usando 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();
Isso me permite usar RabbitMQ para organizar a interação assíncrona entre os serviços.