kafka -client
1. 使用java连接kafka读取消息,首先将kafka安装包中libs中的所有jar导入到工程中,否则可能导致类库找不到的问题 package test.kafka; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Properties; import kafka.consumer.Consumer; import kafka.consumer.ConsumerConfig; import kafka.consumer.ConsumerIterator; import kafka.consumer.KafkaStream; import kafka.javaapi.consumer.ConsumerConnector; public class kafkaCustomer { public static void main(String[] args) { String topic = "topoic"; ConsumerConnector consumer = Consumer.createJavaConsumerConnector(createConsumerConfig()); Map<String, Integer> topicCountMap = new HashMap<String, Integer>(); topicCountMap.put(topic, new Integer(1)); Map<String, List<KafkaStream<byte[], byte[]>>> consumerMap = consumer.createMessageStreams(topicCountMap); KafkaStream<byte[], byte[]> stream = consumerMap.get(topic).get(0); ConsumerIterator<byte[], byte[]> it = stream.iterator(); while(it.hasNext()) System.out.println("consume: " + new String(it.next().message())); } private static ConsumerConfig createConsumerConfig() { Properties props = new Properties(); props.put("group.id","group1"); props.put("zookeeper.connect","zookeeperaddip"); props.put("zookeeper.session.timeout.ms", "4000"); props.put("zookeeper.sync.time.ms", "2000"); props.put("auto.commit.interval.ms", "1000"); return new ConsumerConfig(props); } } 2. python连接kafka consumer - example from kafka import KafkaConsumer import json import os topic = '' fw = open('log-test.txt','w') consumer = KafkaConsumer(topic,group_id='a-my-group-1',bootstrap_servers=['127.0.0.1:9092']) for message in consumer: try: data = message[6] print data d = json.loads(data) fw.write(json.dumps(d) + '\n') except Exception,e: print str(e) print(message) fw.close() produce - example from kafka import KafkaProducer import json import time topic = '' producer = KafkaProducer(bootstrap_servers=['10.1.1.1:9092']) for i in range(100): d = {} d['rm'] = '/2/ok-1' + str(i) print json.dumps(d) producer.send(topic, json.dumps(d)) producer.flush() time.sleep(0.1)