Python PyKafka Api的使用

Python PyKafka Api的使用,python,python-3.x,apache-kafka,pykafka,Python,Python 3.x,Apache Kafka,Pykafka,我是卡夫卡和皮卡夫卡的新手。我知道制作人和消费者都是通过下面的代码用皮卡夫卡制作的 from pykafka import KafkaClient client = KafkaClient("localhost:9092") topic = client.topics["topicname"] producer = topic.get_producer() consumer = topic.get_simple_consumer() 我想知道什么是卡夫卡客户端,以及它如何帮助创建生产者和消费

我是卡夫卡和皮卡夫卡的新手。我知道制作人和消费者都是通过下面的代码用皮卡夫卡制作的

from pykafka import KafkaClient
client = KafkaClient("localhost:9092")

topic = client.topics["topicname"]
producer = topic.get_producer()
consumer = topic.get_simple_consumer()
我想知道什么是卡夫卡客户端,以及它如何帮助创建生产者和消费者


我已经读过,我们也可以使用
client.cluster
client.broker
创建集群和代理,但我不理解
client
在这里的用法。

为了简化术语,用“服务器”代替卡夫卡

您与具有客户端的服务器进行交互

特别是要与卡夫卡互动,您可以通过制作人向主题发送消息,并与消费者获取消息


我现在还不知道这个库,但是
.broker
.cluster
实际上并不是“创建一个Kafka代理/集群”,只是建立一个到现有代理/集群的连接,您可以从中发出后续命令

您需要对这些函数调用使用
客户端。
,因为


要知道为什么它是以这种方式构造的,您必须询问开发人员自己。Kafkafka客户端是pykafka API的根对象,它为Kafka代理提供了一个接口以及实例化消费者和生产者实例的能力。可以将
KafkaClient
看作是一个Python进程与给定Kafka集群交互的总体表示。《卡夫卡客户端》与卡夫卡官方文档中提到的任何概念都没有直接的比较

理论上完全可以设计一个python Kafka客户端库,它没有像
KafkaClient
这样的“客户端”类。我们决定不这样做,因为在我们看来,单个根类提供的接口比一包不同的类更干净、更易于学习