python kafka(一)生产和消费
kafka-python(一)生产和消费
python 连接kafka组件安装:
pip install kafka-python
Producer(生产者)
kafka-python 生产数据,需要导入:KafkaProducer
from kafka import KafkaProducer
创建KafkaProducer连接实例
producer = KafkaProducer(bootstrap_servers=["192.168.11.128:9092"])
将信息推送到主题(topic)中,推送的消息(message)最好转成json格式,或者bytes类型
producer.send(topic,data)
写一个简单的示例,如下:
#encoding:utf-8 from kafka import KafkaProducer import json import time import random topic = "newOrder" producer = KafkaProducer(bootstrap_servers=["192.168.11.128:9092"]) for i in range(30): time.sleep(1) username = ["jcTang","libai","tufu","tumu"] phone = ["151***4481","159***6629","189***7891","131***5681"] random_num = random.randint(0,3) orderinfo={ "orderNo":"no"+str(time.time()).replace(".","")[:10], "username":username[random_num], "phone":phone[random_num], "goodid":random.randint(1,100), "price":random.randint(1,100), "buyNum":random.randint(1,20), "allPrice":random.randint(1,10000), "remark":"测试kafka" } data = json.dumps(orderinfo,ensure_ascii=True).encode("utf-8") print(data) producer.send(topic,data) producer.close()
Consumer(消费者)
kafka-python 消费数据,需要导入:KafkaConsumer
from kafka import KafkaConsumer
创建KafkaConsumer连接实例
consumer = KafkaConsumer( "newOrder", bootstrap_servers=["192.168.11.128:9092"], )
写一个简单的示例,如下:
from kafka import KafkaConsumer
import json
consumer = KafkaConsumer(
"newOrder",
bootstrap_servers=["192.168.11.128:9092"],
)
for i in consumer:
print(json.loads(i.value))
看看运行效果:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
2021-07-12 Linux + jmeter + grafana + influxdb 监控环境