AWS Kafka with Node.js
Abdul wakeel

Abdul wakeel @awakeel

About: Software engineer having 10+ years experience in web development starting from PHP and Now Javascript

Location:
Islamabad
Joined:
Sep 26, 2019

AWS Kafka with Node.js

Publish Date: Feb 27 '23
4 0

To use AWS Kafka with Node.js, use the kafkajs library which provides a client for Kafka in Node.js. Here how to use kafkajs with AWS Kafka:

Install the kafkajs library using npm:

npm install kafkajs

Create a new instance of the Kafka client with the AWS configuration:

const { Kafka } = require('kafkajs')
const kafka = new Kafka({
  clientId: 'my-app',
  brokers: ['kafka-1.amazonaws.com:9092', 'kafka-2.amazonaws.com:9092'],
  ssl: true,
  sasl: {
    mechanism: 'scram-sha-256',
    username: 'my-username',
    password: 'my-password',
  },
})
Enter fullscreen mode Exit fullscreen mode

Create a producer to send messages to a topic:
javascript

const producer = kafka.producer()
await producer.connect()
await producer.send({
  topic: 'my-topic',
  messages: [
    { value: 'Hello Kafka!' },
  ],
})
await producer.disconnect()
Enter fullscreen mode Exit fullscreen mode

Create a consumer to receive messages from a topic:

const consumer = kafka.consumer({ groupId: 'my-group' })
await consumer.connect()
await consumer.subscribe({ topic: 'my-topic', fromBeginning: true })
await consumer.run({
  eachMessage: async ({ topic, partition, message }) => {
    console.log({
      topic,
      partition,
      offset: message.offset,
      value: message.value.toString(),
    })
  },
})
await consumer.disconnect()
Enter fullscreen mode Exit fullscreen mode

That's it! You should now be able to use AWS Kafka with Node.js using the kafkajs library.

Comments 0 total

    Add comment