Вот пример использования Kafka с Node.js:
const { Kafka } = require('kafkajs');
// Create a Kafka instance
const kafka = new Kafka({
clientId: 'my-app',
brokers: ['localhost:9092']
});
// Create a producer
const producer = kafka.producer();
// Create a consumer
const consumer = kafka.consumer({ groupId: 'my-group' });
// Example producer
async function produceMessage() {
await producer.connect();
await producer.send({
topic: 'my-topic',
messages: [
{ value: 'Hello Kafka!' }
]
});
await producer.disconnect();
}
// Example consumer
async function consumeMessage() {
await consumer.connect();
await consumer.subscribe({ topic: 'my-topic', fromBeginning: true });
await consumer.run({
eachMessage: async ({ topic, partition, message }) => {
console.log({
key: message.key.toString(),
value: message.value.toString(),
headers: message.headers,
});
},
});
}
// Run the producer and consumer
produceMessage().catch(console.error);
consumeMessage().catch(console.error);
В этом примере показано, как использовать пакет kafkajsдля создания производителя и потребителя Kafka в Node.js. Производитель отправляет сообщение со значением «Привет, Кафка!» в тему «моя тема», а потребитель подписывается на ту же тему и регистрирует полученное сообщение.
Обратите внимание, что приведенный выше код предполагает, что у вас есть брокер Kafka, работающий на localhost:9092. Обязательно настройте конфигурацию брокера в соответствии с вашими настройками.