kafka-python 基本生产和消费不工作
kafka-python basic producing and consuming not working
我是 kafka 的新手,我正在尝试 运行 基本示例。
我的kafka是运行这个配置:https://developer.confluent.io/quickstart/kafka-docker/
python3.7; kafka安装如下:pip install kafka-python
(2.0.2)
我关注这个文档;然后我 运行 两个控制台(消费和生产各一个)
消费者:
from kafka import KafkaConsumer
for m in KafkaConsumer('my-topic', bootstrap_servers='broker'):
print(m)
制作人:
from kafka import KafkaProducer
p = KafkaProducer(bootstrap_servers='broker')
p.send('my-topic', b'my message!')
在 p.send()
之后,我希望消费者能收到消息。但是没有任何反应。
我的设置有什么问题?
编辑: 控制台是同一个 docker-compose
中的 运行 容器
broker
只在docker-compose网络内部解析,如果你是运行主机中的脚本,你应该使用localhost
.
并且如果您 运行 将脚本作为同一 docker-compose 中的容器,您应该使用 broker:29092
因为 Kafka 正在侦听来自 [=17] 中的连接=] 网络.
我是 kafka 的新手,我正在尝试 运行 基本示例。
我的kafka是运行这个配置:https://developer.confluent.io/quickstart/kafka-docker/
python3.7; kafka安装如下:pip install kafka-python
(2.0.2)
我关注这个文档;然后我 运行 两个控制台(消费和生产各一个)
消费者:
from kafka import KafkaConsumer
for m in KafkaConsumer('my-topic', bootstrap_servers='broker'):
print(m)
制作人:
from kafka import KafkaProducer
p = KafkaProducer(bootstrap_servers='broker')
p.send('my-topic', b'my message!')
在 p.send()
之后,我希望消费者能收到消息。但是没有任何反应。
我的设置有什么问题?
编辑: 控制台是同一个 docker-compose
中的 运行 容器broker
只在docker-compose网络内部解析,如果你是运行主机中的脚本,你应该使用localhost
.
并且如果您 运行 将脚本作为同一 docker-compose 中的容器,您应该使用 broker:29092
因为 Kafka 正在侦听来自 [=17] 中的连接=] 网络.