2016-05-13 13 views
2

kafka-nodeを使用してノードjsを介してkafkaトピックにデータを挿入しようとしています。Node.js kafka-nodeパーティーの種類の使用

partitionerTypeを使用しようとするとデータが挿入されません。コードはPartitionerTypeを削除した場合(つまりオプションを使用しない場合)に機能しますが、その場合はすべてのデータが1つのパーティションにのみ移動します。

問題の解決に手伝ってください。前もって感謝します。

var kafka = require('kafka-node'), 
    Producer = kafka.Producer, 
    KeyedMessage = kafka.KeyedMessage, 
    client = new kafka.Client("zookeeper-host:2181","node-id"), 
    options = { 
    requireAcks: 1, 
    ackTimeoutMs: 100, 
    partitionerType: 3 
     }, 
    producer = new Producer(client, options); 
    //producer = new Producer(client); -- This works 

    var km = new KeyedMessage('key1', 'message6'), 
    kn = new KeyedMessage('key2', 'message5'), 
    kv = new KeyedMessage('key3', 'message4'), 
    kx = new KeyedMessage('key4', 'message3'), 
    ky = new KeyedMessage('key5', 'message2'), 
    kz = new KeyedMessage('key6', 'message1'), 
    payloads = [ 
     { topic: 'test-topic3', messages: [km,kn,kv,kx,ky,kz] } 
    ]; 
    console.log("Ready to send data"); 
    producer.on('ready', function() { 
    producer.send(payloads, function (err, data) { 
     console.log(data); 
    }); 
    }); 

console.log("DATA SENT"); 

多くのおかげでコードの上

巴里

答えて

0

はHighLevelConsumerで正常に動作しています。

おかげ 巴里