python使用kafka-Python调用Kafka发送数据

本文介绍了使用Python的kafka-Python库调用Kafka发送数据的三种方式:发送并忘记、同步发送和异步发送+回调函数,并通过示例代码展示了各自的操作过程与性能测试结果。在不同业务场景下,应根据消息可靠性和吞吐量需求选择合适的方式。
摘要由CSDN通过智能技术生成

来源于 https://www.cnblogs.com/FG123/p/10091478.html

Kafka是一种分布式的基于发布/订阅的消息系统,它的高吞吐量、灵活的offset是其它消息系统所没有的。

Kafka发送消息主要有三种方式:

1.发送并忘记 2.同步发送 3.异步发送+回调函数

下面以单节点的方式分别用三种方法发送1w条消息测试:

方式一:发送并忘记(不关心消息是否正常到达,对返回结果不做任何判断处理)

发送并忘记的方式本质上也是一种异步的方式,只是它不会获取消息发送的返回结果,这种方式的吞吐量是最高的,但是无法保证消息的可靠性:

copycode.gif

1 import pickle

2 import time

3 from kafka import KafkaProducer

4

5 producer = KafkaProducer(bootstrap_servers=['192.168.33.11:9092'],

6 key_serializer=lambda k: pickle.dumps(k),

7 value_serializer=lambda v: pickle.dumps(v))

8

9 start_time = time.time()

10 for i in range(0, 10000):

11 print('------{}---------'.format(i))

12 future = producer.send(&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值