1、生产者
- 从编程的角度而言,生产者就是负责向Kafka发送消息的应用程序。
- 在Kafka的历史变迁中,一共有两个大版本的生产者客户端:
- 第一个是于Kafka开源之初使用Scala语言编写的客户端,称之为旧生产者客户端(OldProducer)或Scala版生产者客户端;
- 第二个是从Kafka0.9.x版本开始推出的使用Java语言编写的客户端,称之为新生产者客户端(New Producer)或Java版生产者客户端,它弥补了旧版客户端中存在的诸多设计缺陷。
- 虽然Kafka是用Java/Scala语言编写的,但这并不妨碍它对于多语言的支待,其中包括常用的C/C++、Python、Go等语言,不过这些其他类语言的客户端并非由Kafka社区维护,如果使用则需要另行下载。
- kafka支持的语言列表:https://cwiki.apache.org/confluence/display/KAFKA/Clients
1、客户端开发
- 一个正常的生产逻辑需要具备以下几个步骤:
- (1)配置生产者客户端参数及创建相应的生产者实例。
- (2)构建待发送的消息。
- (3)发送消息。
- (4)关闭生产者实例。
1
问题
1、下载kafka-python报错
1、问题
D:\test\kafka>pip install kafka-python WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutEr ror(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x000002D550294130>, 'Connection to pypi.org timed out. (connect timeo ut=15)')': /simple/kafka-python/
2、解决问题
- 这是因为使用默认的pip源速度太慢超时了,可以使用国内的pip源
- 阿里云:http://mirrors.aliyun.com/pypi/simple/
- 中国科技大学:https://pypi.mirrors.ustc.edu.cn/simple/
- 清华大学:https://pypi.tuna.tsinghua.edu.cn/simple/
D:\test\kafka>pip install kafka-python -i https://pypi.tuna.tsinghua.edu.cn/simple/
1