首先,我想说我是Kafka的新手,也是stackoverflow的新手,所以如果不能以正确的方式提出这个问题,我感到抱歉。 我正在尝试使用kafka-python实现生产者-消费者。 但是它不能正常工作
我已经安装了zookeeper,并且已启动并运行它。我也有kafka服务器。但是当我通过pycharm运行消费者和生产者时,接收者没有收到消息。消费者继续运行,但生产者停止了。
consumer.py
from kafka import KafkaConsumer
consumer = KafkaConsumer('test', group_id='test-consumer-group',
bootstrap_servers=['my_ip:9092'], api_version=(0, 10, 1),
auto_offset_reset='earliest')
print("Consuming messages")
for msg in consumer:
print(msg)
producer.py
from kafka import KafkaProducer
print('above producer')
producer = KafkaProducer(bootstrap_servers=['my_ip:9092'], api_version=(0, 10, 1),
compression_type=None
)
print('after producer')
for _ in range(100):
producer.send('test', b'HELLO NITHIN chandran')
print('after sending messages')
在my_ip处,我已从ipconfig中提供了我的系统IP地址。
consumer.py输出-
Consuming messages
consumer.py不会停止运行
producer.py输出-
above producer
after producer
after sending messages
Process finished with exit code 0
producer.py停止运行,并且该过程已完成,如输出所示。
请帮助我解决此问题。 感谢所有帮助
答案 0 :(得分:1)
您的代码正常,问题出在您的代理配置上。请将其设置为初始配置,只需将log.dirs
更改为要存储Kafka数据的路径即可。
更改配置文件后,请执行以下步骤: