python消费kafka_python生成kafka消息和消费kafka消息

1、创建连接kafka的对象

kafka_hosts = ["4.4.4.2","4.4.4.3","4.4.4.4"]

kafka_port = 6667

import time

kafka_producer = KafkaProducer(bootstrap_servers = ["{kafka_host1}:{kafka_port}".format(kafka_host1 = kafka_hosts[0],kafka_port = kafka_port),

"{kafka_host2}:{kafka_port}".format(kafka_host2 = kafka_hosts[1],kafka_port= kafka_port),

"{kafka_host3}:{kafka_port}".format(kafka_host3 = kafka_hosts[2],kafka_port = kafka_port)],max_request_size=101626282, buffer_memory=101626282,acks="all")

2、参数解释

max_request_size=101626282, buffer_memory=101626282

为了发送大文件

acks="all"

需要所有副本返回才可以

3、调用对象的send的方法发送数据

res = kafka_producer.send(topic="full-sight-insert", value=i)

print(res.get())

打印数据在kakfa中的位置

RecordMetadata(topic='full-sight-insert', partition=2, topic_partition=TopicPartition(topic='full-sight-insert', partition=2), offset=640782, timestamp=-1, checksum=-2084735199, serialized_key_size=-1, serialized_value_size=7122)

4、通过python消费kafka的消息

consumer = KafkaConsumer(topic,

auto_offset_reset='earliest',

bootstrap_servers=['10.1.4.12:9092'])

filename = os.path.join(filepath, str(topic) + ".txt")

while True:

message = consumer.poll(timeout_ms=120000)

if message:

for i in message.values():

1101486-20200329131802255-688655090.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值