إرسال واستقبال الرسائل Apache Kafka بتنسيق Node.js

الخطوة 1: قم بتثبيت مكتبة كافكا لملفات Node.js

افتح terminal في Node.js دليل المشروع الخاص بك.

قم بتشغيل الأمر التالي لتثبيت kafkajs مكتبة ، Node.js مكتبة لـ Apache Kafka:. npm install kafkajs

الخطوة 2: إرسال الرسائل Producer بتنسيق Node.js

استيراد kafkajs المكتبة وتحديد Kafka Broker التكوين:

const { Kafka } = require('kafkajs');  
  
const kafka = new Kafka({  
  clientId: 'your-client-id',  
  brokers: ['broker1:port1', 'broker2:port2'], // Replace with actual addresses and ports  
});  

قم بإنشاء producer لإرسال رسائل وإرسال رسالة إلى topic:

const producer = kafka.producer();  
  
const sendMessage = async() => {  
  await producer.connect();  
  await producer.send({
    topic: 'your-topic',  
    messages: [{ value: 'Hello Kafka!' }],  
  });  
  await producer.disconnect();  
};  
  
sendMessage();  

الخطوة 3: استلام الرسائل Consumer بتنسيق Node.js

قم باستيراد kafkajs المكتبة وحدد Kafka Broker التكوين(إذا لم يكن قد تم بالفعل):

const { Kafka } = require('kafkajs');  
  
const kafka = new Kafka({  
  clientId: 'your-client-id',  
  brokers: ['broker1:port1', 'broker2:port2'], // Replace with actual addresses and ports  
});  

إنشاء consumer لتلقي الرسائل من معين topic:

const consumer = kafka.consumer({ groupId: 'your-group-id' });  
  
const consumeMessages = async() => {  
  await consumer.connect();  
  await consumer.subscribe({ topic: 'your-topic', fromBeginning: true });  
  
  await consumer.run({  
    eachMessage: async({ topic, partition, message }) => {  
      console.log(`Received message: ${message.value}`);  
    },  
  });  
};  
  
consumeMessages();  

ملاحظة: استبدل القيم مثل 'your-client-id' و 'broker1:port1' و 'your-topic' و 'your-group-id' بمعلومات مشروعك الفعلية.

تأكد من الرجوع إلى الوثائق الرسمية Apache Kafka والمكتبة kafkajs لمزيد من المعلومات حول خيارات التكوين والوظائف.