python批量向kafka塞数据


python批量向kafka塞数据

 

from kafka import KafkaClient
from kafka.producer import SimpleProducer


def send_data_2_kafka(topic, datas):
    '''
        向kafka解析队列发送数据
    '''
    PARTNUM = 100
    TOPICNAME = topic
    KAFKABROKER = ["192.168.2.110:9092"]
    client = KafkaClient(hosts=KAFKABROKER, timeout=30)
    producer = SimpleProducer(client, async_send=False)
    curcount = int(len(datas)//PARTNUM)
    for i in range(curcount):
        start = i*PARTNUM
        if i != curcount - 1:
            end = (i+1)*PARTNUM
            curdata = datas[start:end]
            future = producer.send_messages(TOPICNAME, *curdata)
            print(future)
        else:
            curdata = datas[start:]
            future = producer.send_messages(TOPICNAME, *curdata)
            print(future)
        
    producer.stop()
    client.close()

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM