- 文档首页
消息队列 Kafka版
SDK 参考
Apache Kafka SDK
Python 客户端 SDK
PLAINTEXT 接入点收发消息
Python 客户端 SDK
PLAINTEXT 接入点收发消息
PLAINTEXT 接入点收发消息
本文以 Python 客户端为例,介绍如何在 VPC 环境下通过 PLAINTEXT 接入点接入消息队列 Kafka版,并收发消息。
前提条件
1 添加配置文件
创建消息队列 Kafka版配置文件 config.json。配置文件字段的详细说明,请参考SDK 配置说明。 使用 PLAINTEXT 接入点时,配置文件示例如下。
"bootstrap.servers": "xxxxx",
"security.protocol": "PLAINTEXT",
2 发送消息
实现方法
-
说明
消息队列 Kafka版提供示例项目供您快速接入,下载并解压缩 Demo 后,可以直接执行以下命令发送并消费消息。 python3 {DemoPath}/bytedance_kafka.py
示例代码
通过 PLAINTEXT 接入点生产消息的示例代码如下,您也可以参考 Demo 中的示例文件 {DemoPath}/client/producer.py,实现相关业务逻辑。
from confluent_kafka import Producer
def callback(err, meta):
py:function:: callback(err, meta)
Handle the result of message delivery.
:param confluent_kafka.KafkaError err: error if delivery is failed
:param confluent_kafka.Message meta: message metadata if delivery is success
print('[INFO] Delivered message to topic {} [{}] at offset {}'
.format(meta.topic(), meta.partition(), meta.offset()))
print('[ERROR] Delivery failed: {}'.format(err))
p = Producer(conf.producer_conf())
p.produce(conf.topic(), 'demon message {}'.format(i).encode('utf-8'), on_delivery=callback)
3 消费消息
实现方法
- 创建 Consumer 订阅消息程序 consumer.py。
消息消费示例代码
通过 PLAINTEXT 接入点消费消息的示例代码如下,您也可以参考 Demo 中的示例文件 {DemoPath}/client/consumer.py,实现相关业务逻辑。
from confluent_kafka import Consumer
def handle_message(msg):
py:function:: handle_message(msg)
Handle consumed message.
:param confluent_kafka.Message msg: consumed message meta.
print('[INFO] Consumed a message from topic {} [{}] at offset {}. value: {}'.
format(msg.topic(), msg.partition(), msg.offset(), msg.value().decode('utf-8')))
c = Consumer(conf.consumer_conf())
c.subscribe([conf.topic()])
msg = c.poll(timeout=1.0)
print('[ERROR] Consume msg failed, {}'.format(msg.error()))
c.commit(asynchronous=False)
最近更新时间:2025.08.08 17:47:27