python kafka demo测试
在window上测试时需实现开启kafka和zookeeper服务
环境
pip install kafka-python
生产者
from kafka import KafkaProducer
import json
'''
生产者demo
向test主题中循环写入10条json数据
注意事项:要写入json数据需加上value_serializer参数
'''
producer = KafkaProducer(
value_serializer=lambda v: json.dumps(v).encode('utf-8'),
bootstrap_servers=['192.168.34.101:6666']
)
for i in range(10):
data={
"name":"李四",
"age":23,
"gender":"男",
"id":i
}
producer.send('test', data)
try:
record_metadata = future.get(timeout = 10)
execept Exception as e:
print(e)
producer.close()
消费者
from kafka import KafkaConsumer
import json
'''
消费者demo
消费test主题中的数据
注意事项:如需以json格式读取数据需加上value_deserializer参数
'''
consumer = KafkaConsumer('test',group_id="test1",
bootstrap_servers=['192.168.34.101:6666'],
auto_offset_reset='earliest',value_deserializer=json.loads
)
for message in consumer:
print(message.value)