Kafka Streams 와 통합 Node.js

Kafka Streams 애플리케이션 과 통합하는 것은 환경 내에서 Node.js Apache에서 직접 데이터를 처리하고 분석하는 강력한 방법입니다. 실시간 데이터 처리를 구축하고 애플리케이션에 원활하게 통합할 수 있습니다. 이를 달성하는 방법에 대한 구체적인 가이드는 다음과 같습니다. Kafka Node.js Kafka Streams Node.js

1단계: Kafka Streams KafkaJS 설치 및

먼저 KafkaJS를 설치하고 애플리케이션 에 Kafka Streams 통합해야 합니다. npm을 사용하여 다음 패키지를 설치할 수 있습니다. Kafka Node.js

npm install kafka-streams kafkajs

2단계: 만들기 Kafka Stream

API를 사용하여 애플리케이션 Kafka Stream 에서 를 만듭니다. 다음은 하나의 데이터를 처리 하고 다른 데이터로 결과를 출력하기 위해 a를 만드는 기본적인 예입니다. Node.js Kafka Streams Kafka Stream topic topic

const { KafkaStreams } = require('kafka-streams');  
const { Kafka } = require('kafkajs');  
  
const kafka = new Kafka({  
  clientId: 'your-client-id',  
  brokers: ['broker1:port1', 'broker2:port2'],  
});  
  
const kafkaStreams = new KafkaStreams({  
  kafka,  
  logLevel: 2, // Level 2 for debug logs  
});  
  
const streamConfig = {  
  'group.id': 'your-group-id',  
  'metadata.broker.list': 'broker1:port1,broker2:port2',  
  'enable.auto.commit': false,  
  'socket.keepalive.enable': true,  
};  
  
const stream = kafkaStreams.getKStream(streamConfig);  
  
stream  
  .from('input-topic')  
  .filter(record => record.value && record.value.length > 0)  
  .map(record =>({  
    key: record.key,  
    value: record.value.toUpperCase(),  
  }))  
  .to('output-topic');  
  
kafkaStreams.start();  

3단계: 데이터 처리

Kafka Stream 위의 예에서 우리는 에서 데이터를 수신하기 위해 를 만든 input-topic 다음 데이터를 모두 대문자로 변환하고 결과를 에 푸시하여 데이터를 처리했습니다 output-topic.

4단계: 애플리케이션 실행

Node.js 마지막으로 에서 데이터 처리를 시작하려면 애플리케이션을 실행해야 합니다 Kafka Streams.

your-client-id 위의 예에서, 및 같은 값을  프로젝트의 특정 세부 정보로 broker1:port1, your-group-id 바꿔야 합니다. input-topic output-topic

 

Kafka Streams 애플리케이션 과 통합하면 Node.js 실시간 데이터 처리 기능을 유연하고 강력하게 구축할 수 있습니다.