python kafka 发送/接收 消息

首先有安装好的 kafka 环境,点我查看安装教程

环境安装

bash 复制代码
pip install kafka-python -i https://pypi.tuna.tsinghua.edu.cn/simple/

生产者

python 复制代码
import json
import traceback
from kafka import KafkaProducer
from kafka.errors import kafka_errors


def producer_demo():
    producer = KafkaProducer(
        bootstrap_servers=['localhost:9092'], 
        key_serializer=lambda k: json.dumps(k).encode(),
        value_serializer=lambda v: json.dumps(v).encode())
    
    future = producer.send(
        'mykafka',
        key='creater',  # 同一个key值,会被送至同一个分区
        value="{'creater':'zhangsan', 'date':'2023-04-04'}",
        partition=0)  # 向分区1发送消息
    future.get(timeout=100)

if __name__ == "__main__":
    producer_demo()

消费者

python 复制代码
import json
import time
import traceback
from kafka import KafkaConsumer
from kafka.errors import kafka_errors

def consumer_demo():
    consumer = KafkaConsumer(
        'mykafka',
        bootstrap_servers="127.0.0.1:9092",
        auto_offset_reset='earliest'
    )

    for message in consumer:
        print(message)
        print(json.loads(message.value))
        # print(a)

if __name__ == "__main__":
    while True:
        consumer_demo()
        time.sleep(1)
相关推荐
云水-禅心4 分钟前
解决MacOS 安装Python之后默认版本指向不正确问题
开发语言·python·macos
爱吃牛肉的大老虎12 分钟前
Kafka集群之抛弃 Zookeeper
分布式·zookeeper·kafka
hdsoft_huge29 分钟前
部署 Nacos + Ollama + vLLM + MCP 完整图文教程(1Panel 面板,命令行安装两种方式)
python·vllm·ollama·mcp
weixin_3077791335 分钟前
从工具到协作者:AI在后端研发中的流程重构与组织赋能
人工智能·后端·python·算法·自动化
AI帮小忙36 分钟前
CTF WEB 解题技能
python
科芯创展38 分钟前
30VIN,0.15A,0.8uA低功耗,稳压LDO,XZ6328
python
装不满的克莱因瓶40 分钟前
循环神经网络及LSTM——从序列建模到长期依赖记忆机制
人工智能·pytorch·python·rnn·深度学习·神经网络·lstm
叫我:松哥1 小时前
基于神经网络的汽车与自行车的分类算法设计与实现,采用ResNet50和迁移学习,准确率达到99%
人工智能·python·神经网络·机器学习·分类·汽车·迁移学习
靖待1 小时前
【解决方法】python写Excel单元格截断长文本
python·excel·解决方法
우리帅杰1 小时前
【AI测试】Python AI大模型介绍
开发语言·人工智能·python·ai编程