我是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脚本?只需保存,制作可执行文件并执行:
chmod +x ./kProducer.py
python ./kproducer.py
在脚本的顶部添加shebang行:
#!/usr/bin/env python-version
用python2替换python-for 2.x和python3替换3.x要检查python的版本,请使用命令:python -V
shebang line将确定脚本作为独立运行的能力。当您想要双击脚本并执行它而不是从终端执行时,这将有所帮助。或者简单地说
python scriptname.py