如何运行用Python编写的kafka生成器?

问题描述 投票:1回答:2

我是Kafka的新手,但是看过一些教程,所以我知道Kafka是如何工作的。我正在尝试运行我用Python编写的生产者但我不知道在启动zookeeper服务器和kafka服务器之后如何运行此文件。如果有人能告诉我要在命令提示符下写入的命令的结构,我真的很感激。谢谢!

卡夫卡制片人:

import json
import time
from kafka import KafkaProducer
from kafka.errors import KafkaError
from kafka.future import log

if __name__ == "__main__":
  producer = KafkaProducer(bootstrap_servers= 'localhost: 9092')

future = producer.send('my-topic', b"test")

try:
    record_metadata = future.get( timeout=10)
except KafkaError :
    log.exeption()
    pass

print( record_metadata.topic)
print(record_metadata.partition)
print(record_metadata.offset)

producer = KafkaProducer(value_serializer = lambda m: json.dumps(m).encode('ascii'))
producer.send('json-topic',{'key':'value'})

for _ in range (100):
    producer.send('my-topic', b"test")
    producer.send('my-topic',b"\xc2Hola, mundo!")
    time.sleep(1)
python apache-kafka kafka-producer-api
2个回答
2
投票

所以你的问题是如何运行python脚本?只需保存,制作可执行文件并执行:

chmod +x ./kProducer.py
python ./kproducer.py

更多细节在这里:How to Run a Python Script via a File or the Shell


1
投票

在脚本的顶部添加shebang行:

#!/usr/bin/env python-version用python2替换python-for 2.x和python3替换3.x要检查python的版本,请使用命令:python -V shebang line将确定脚本作为独立运行的能力。当您想要双击脚本并执行它而不是从终端执行时,这将有所帮助。或者简单地说

python scriptname.py

© www.soinside.com 2019 - 2024. All rights reserved.