对python操作kafka写入json数据的简单demo分享

yipeiwu_com7年前Python基础

如下所示:

安装kafka支持库pip install kafka-python
from kafka import KafkaProducer
import json
 
'''
 生产者demo
 向test_lyl2主题中循环写入10条json数据
 注意事项:要写入json数据需加上value_serializer参数,如下代码
'''
producer = KafkaProducer(
       value_serializer=lambda v: json.dumps(v).encode('utf-8'),
       bootstrap_servers=['192.168.12.101:6667','192.168.12.102:6667','192.168.12.103:6667']
       )
for i in range(10):
 data={
  "name":"李四",
  "age":23,
  "gender":"男",
  "id":i
 }
 producer.send('test_lyl2', data)
producer.close()
from kafka import KafkaConsumer
import json
 
'''
 消费者demo
 消费test_lyl2主题中的数据
 注意事项:如需以json格式读取数据需加上value_deserializer参数
'''
 
 
consumer = KafkaConsumer('test_lyl2',group_id="lyl-gid1",
       bootstrap_servers=['192.168.12.101:6667','192.168.12.102:6667','192.168.12.103:6667'],
       auto_offset_reset='earliest',value_deserializer=json.loads
       )
for message in consumer:
 print(message.value)

以上这篇对python操作kafka写入json数据的简单demo分享就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

浅谈django model postgres的json字段编码问题

django model的json字段的编码器不能有效编码诸如uuid,datetime等数据类型,当直接存储此类型的对象到json字段中为抛出编码异常,这时可以通过JSONField字...

解决Pyinstaller 打包exe文件 取消dos窗口(黑框框)的问题

解决Pyinstaller 打包exe文件 取消dos窗口(黑框框)的问题

我们用python 打包的exe文件的时候,每次运行后面都有一个黑框框,比如我的这个: 用tkinter做的图形界面,打包成exe文件,每次运行都先有黑色框框,我们一般电脑用的带有图形...

Python中对象迭代与反迭代的技巧总结

一、如何实现可迭代对象和迭代器对象? 实际案例 某软件要求从网络抓取各个城市气味信息,并其次显示: 北京: 15 ~ 20 天津: 17 ~ 22 长春: 12 ~ 18 .......

Python3 main函数使用sys.argv传入多个参数的实现

在运维过程中,有些时候需要向main函数中传递参数,以方便运维与测试,那么怎么向main函数中传入多个参数呢,下面以python3中的main函数为例,简单讲一下。 首先我们需要impo...

原来我一直安装 Python 库的姿势都不对呀

平常我都是直接执行 pip install 安装的第三方库,很多教程也是这么介绍的,一直以来我都认为这是标准的、正确的安装 Python 第三方库的姿势。直到我最近看到Python核心开...