我看到PyKafka有一种不寻常的行为,这是我最近刚开始使用的一个客户。
错误如下:
Failed to connect newly created broker for b'4758e4ee1af6':9092
{0: <pykafka.broker.Broker at 0x7f319e19be10 (host=b'4758e4ee1af6',port=9092, id=0)>}
错误的来源如下:
self.client = KafkaClient(hosts=BROKER_ADDRESS, broker_version="0.10.1.0")
consumer = self.client.topics[bytes(self.input_topic,"UTF-8")].get_balanced_consumer(
consumer_group=bytes(self.consumer_group,"UTF-8"),
auto_commit_enable=True
)
调试时,我看到客户端使用正确的字符串IP连接到种子代理,但当检索到代理列表时,它们的IP是二进制的,当PyKafka尝试再次连接以创建消费者时,这些IP显然不起作用。
另一个可能与此相关的问题是,我需要自己将主题名称和消费者组名称转换为字节(与其他客户端一样),但文档中的所有示例都显示了字符串的用法。
Kafka broker版本:0.10.1.0
PyKafka版本:2.7.0