반응형
일단 node와 express가 설치돼 있고 kafka와 zookeeper가 설치돼 있으며 둘 모두 실행해놓고 진행해라...
kafka-node도 필요하니 설치해두자...
#npm install kafka-node
아주 간단하다...
일단 카프카에 메세지를 등록해보자...이걸 producer라고 한다...
var kafka = require('kafka-node'),
Producer = kafka.Producer,
KeyedMessage = kafka.KeyedMessage,
client = new kafka.KafkaClient(),
producer = new Producer(client),
km = new KeyedMessage('key', 'message'),
payloads = [
{ topic: 'topic1', messages: 'hi,there', partition: 0 },
{ topic: 'topic2', messages: ['hello2', 'world2', km] }
];
producer.on('ready', function () {
producer.send(payloads, function (err, data) {
console.log(data);
});
});
위 내용을 적당한 이름으로 저장한다...producer.js
topic1과 topic2를 만들고 그 안에 topic1에는 "hi, there"를 넣고 topic2에는 다른걸 넣었다...
이제 실행해보자...
#node producer.js
라고 해보면 입력된 offset 번호가 나온다...
이제 node를 이용해서 입력한 메세지를 확인해보자...이런걸 consumer라고 한다...
var kafka = require('kafka-node');
var Consumer = kafka.Consumer;
var Offset = kafka.Offset;
var Client = kafka.KafkaClient;
var topic = 'topic1';
var client = new Client({ kafkaHost: 'kafka1:9092' });
var topics = [{ topic: topic, partition: 0 }];
var options = { autoCommit: false, fetchMaxWaitMs: 1000, fetchMaxBytes: 1024 * 1024 };
var consumer = new Consumer(client, topics, options);
var offset = new Offset(client);
consumer.on('message', function (message) {
console.log(message);
});
consumer.on('error', function (err) {
console.log('error', err);
});
consumer.js로 저장하고 확인해본다..
#node consumer.js
topic1에 저장된 메세지가 나타난다...
topic2를 보고 싶다면 바꿔주면 된다...
개발하다 힘들면 눌러.
반응형
'nodejs' 카테고리의 다른 글
TXID 조회 (0) | 2019.05.20 |
---|---|
Centos7에 node와 express 설치하기 (0) | 2019.05.16 |
node와 web3를 이용한 이더 전송과 트랜잭션 확인 (0) | 2019.03.15 |
node와 web3를 이용해 블럭넘버와 계정 조회하기 (0) | 2019.03.15 |
npm으로 web3 설치할때 만나는 에러 해결 (0) | 2019.03.15 |