第 1 步:安装 Kafka 库 Node.js
terminal 在您的 Node.js 项目目录中 打开一个。
运行以下命令来安装 kafkajs
库,该 Node.js 库为 Apache Kafka: npm install kafkajs
。
第 2 步:使用 Producer in发送消息 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 发送消息,并将消息发送到 a 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 in接收消息 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
库的官方文档以获取有关配置选项和功能的更多信息。