千家信息网

python如何实现对kafka的基本操作

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要为大家展示了"python如何实现对kafka的基本操作",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"python如何实现对kafka的基本操
千家信息网最后更新 2026年11月03日python如何实现对kafka的基本操作

这篇文章主要为大家展示了"python如何实现对kafka的基本操作",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"python如何实现对kafka的基本操作"这篇文章吧。

-- coding:utf-8 --

from kafka import KafkaProducer
from kafka import KafkaConsumer
from kafka.structs import TopicPartition
import time

bootstrap_servers = []
class OperateKafka:
def init(self,bootstrap_servers,topic):
self.bootstrap_servers = bootstrap_servers
self.topic = topic

"""生产者"""def produce(self):    producer = KafkaProducer(bootstrap_servers=self.bootstrap_servers)    for i in range(4):        msg = "msg%d" %i        producer.send(self.topic,key=str(i),value=msg)    producer.close()"""一个消费者消费一个topic"""def consume(self):    #consumer = KafkaConsumer(self.topic,auto_offset_reset='earliest',group_id="testgroup",bootstrap_servers=self.bootstrap_servers)    consumer = KafkaConsumer(self.topic,bootstrap_servers=self.bootstrap_servers)    print consumer.partitions_for_topic(self.topic)  #获取test主题的分区信息print consumer.topics()  #获取主题列表print consumer.subscription()  #获取当前消费者订阅的主题print consumer.assignment()  #获取当前消费者topic、分区信息print consumer.beginning_offsets(consumer.assignment()) #获取当前消费者可消费的偏移量consumer.seek(TopicPartition(topic=self.topic, partition=0), 1)  #重置偏移量,从第1个偏移量消费    for message in consumer:        print ("%s:%d:%d: key=%s value=%s"         % (message.topic,message.partition,message.offset, message.key,message.value))"""一个消费者订阅多个topic """def consume2(self):    consumer = KafkaConsumer(bootstrap_servers=['192.168.124.201:9092'])consumer.subscribe(topics=('TEST','TEST2'))  #订阅要消费的主题print consumer.topics()print consumer.position(TopicPartition(topic='TEST', partition=0)) #获取当前主题的最新偏移量for message in consumer:        print ("%s:%d:%d: key=%s value=%s" % (message.topic, message.partition,                                      message.offset, message.key,                                      message.value))"""消费者(手动拉取消息)"""def consume3(self):    consumer = KafkaConsumer(group_id="mygroup",max_poll_records=3,bootstrap_servers=['192.168.124.201:9092'])consumer.subscribe(topics=('TEST','TEST2'))while True:        message = consumer.poll(timeout_ms=5)   #从kafka获取消息        if message:        print message        time.sleep(1)

def main():
bootstrap_servers = ['192.168.124.201:9092']
topic = "TEST"
operateKafka = OperateKafka(bootstrap_servers,topic)
operateKafka.produce()
#operateKafka.consume()
#operateKafka.consume2()
operateKafka.consume3()
main()

以上是"python如何实现对kafka的基本操作"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

消费 消费者 主题 偏移 基本操作 内容 篇文章 订阅 信息 学习 帮助 多个 手动 易懂 更多 条理 消息 生产者 知识 编带 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 上海喔噻互联网科技有限公司 互联网科技垄断 金融科技 互联网金融 远拓互联网科技 科技互联网公司logo 互联网科技公司名称 互联网科技寓意 顶级互联网科技成果有哪些 苏州五指互联网络科技有限 互联网科技革命什么开始 中国航天科技大学国际工业互联网 深圳育鹏互联网科技有限公司招聘 996高科技互联网公司 中国互联网公司排名锤子科技 华夏恒生科技与互联网科技 众安科技工业互联网合作 福仕德教育科技互联网 互联网科技和医药行业 杭州融税互联网科技有限公司 上海旺乐尼互联网科技有限公司 互联网科技的 易互联网科技有限公司 九亚互联网科技 银优互联网科技有限公司 顺玮阁互联网科技 四个字互联网科技公司取名 链环科技传统企业怎么转型互联网 佛山市翊博互联网络科技有限公司 富国互联网科技002692 新氧科技和美国互联网有关系吗
0