关于topic的常用指令
1. 查看有哪些topic
./kafka-topics.sh --bootstrap-server 192.168.16.148:9092 --list
2. 查看有哪些消费者组
./kafka-consumer-groups.sh --bootstrap-server 192.168.16.148:9092 --list
3. 查看某个topic的详细信息
./kafka-topics.sh --describe --topic db_mongodb_room_sync_v2 --bootstrap-server 192.168.16.148:9092
4. 创建一个生产者,向某个topic生产数据
./kafka-console-producer.sh --broker-list 192.168.16.148:9092 --topic db_mongodb_room_sync_v2
python生产kafka
from kafka import KafkaProducer
import time
# 配置生产者
producer = KafkaProducer(bootstrap_servers='192.168.18.111:9092')
for i in range(1,1000):
producer.send("python-topic-test",b"hello world ")
time.sleep(1)
python 消费kafka
安装kafka库
pip install kafka-python-ng
from kafka import KafkaConsumer
# 配置消费者
consumer_config = {
'bootstrap_servers': '192.168.16.148:9092', # Kafka 集群地址
'group_id': 'lifq-consumer-group', # 消费者群组ID
'auto_offset_reset': 'earliest', # 从最早的消息开始消费
}
# 创建消费者实例
consumer = KafkaConsumer('db_plugins_user_channelDistributeRoom_v1', **consumer_config)
# 读取消息
for message in consumer:
print(message.value.decode('utf-8'))