我有一个关于python中使用kafka模块的代码的问题,我真的不知道为什么它不能工作。在我像quickstart页面建议的那样初始化了ZooKeep&Kafka服务器并在我的计算机上创建主题之后,我尝试使用Termux在我的智能手机上运行以下代码:
from json import dumps, loads
from kafka import KafkaProducer, KafkaConsumer
class CommunicationLayer:
def __init__(self, node_id):
self.output_publisher = KafkaProducer(bootstrap_servers=['192.168.1.103:9092'], value_serializer=lambda x:
dumps(x).encode('utf-8'))
self.window_receiver = KafkaConsumer("node_{}".format(node_id), bootstrap_servers=['192.168.1.103:9092'] , value_deserializer=lambda x: loads(x.decode('utf-8')))
...
(code that doesn't really help)
...( IP指向运行kafka服务器的机器)。一旦我运行这段代码,我就会得到NoBrokerAvailable错误,据我所知,只有当您还没有初始化服务器时,才会出现这个错误。我错过了什么吗?
发布于 2019-03-22 19:27:49
我试图在我的智能手机上运行以下代码
注意: Kafka客户端不打算在网络连接不可靠的环境中运行。
IP指向运行kafka服务器的机器。
卡夫卡( ZooKeeper )和卡夫卡( Kafka )是否在这台机器上暴露了的外部,而不仅仅是本地监听?
类似地,您需要将Kafka属性中的advertised.listeners属性设置为该外部地址,以便任何客户端能够在引导连接之后实际连接。
https://stackoverflow.com/questions/55297937
复制相似问题