Sobes.tech
Junior — Middle

Meséljen a üzenetközvetítőkkel való tapasztalatáról és azok projektben való használatáról

sobes.tech MI

Válasz az MI-től

Node.js projektekben olyan üzenetközvetítőkkel dolgoztam, mint például RabbitMQ és Apache Kafka. Ezeket az aszinkron üzenetcsere szervezésére használják a rendszer komponensei között, ami növeli a skálázhatóságot és a hibatűrést.

Például egy projektben a RabbitMQ-t háttérfeladatok feldolgozására használták: a webszerver üzeneteket küldött a sorba, és egy külön munkás dolgozta fel azokat. Ez lehetővé tette a fő folyamat terhelésének csökkentését és az alkalmazás reakcióképességének javítását.

Példa üzenet küldésére RabbitMQ-ba Node.js-ben az amqplib könyvtár használatával:

const amqp = require('amqplib');

async function sendMessage() {
  const connection = await amqp.connect('amqp://localhost');
  const channel = await connection.createChannel();
  const queue = 'tasks';
  const msg = 'Process this task';

  await channel.assertQueue(queue, { durable: true });
  channel.sendToQueue(queue, Buffer.from(msg));

  console.log("[x] Sent '%s'", msg);
  setTimeout(() => {
    connection.close();
  }, 500);
}

sendMessage();

Így a üzenetközvetítők segítenek elosztott és skálázható rendszerek építésében, hatékony adatfeldolgozással.