阅读后如何删除卡夫卡留言

2024-04-20 11:22:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用下面的代码来阅读主题中的消息。如何在邮件被阅读后删除它?在

from kafka import KafkaConsumer


    consumer = KafkaConsumer('my-topic',
                             group_id='my-group',
                             bootstrap_servers=['localhost:9092'])
    for message in consumer:
        # message value and key are raw bytes -- decode if necessary!
        # e.g., for unicode: `message.value.decode('utf-8')`
        print ("%s:%d:%d: key=%s value=%s" % (message.topic, message.partition,
                                              message.offset, message.key,
                                              message.value))

Tags: key代码from消息message主题fortopic
1条回答
网友
1楼 · 发布于 2024-04-20 11:22:16

没有办法从卡夫卡那里删除一条特定的信息——卡夫卡根本就不是要这样做的。删除消息的唯一方法是将kafka的config/server.properties中的log.retention.hours设置为你喜欢的值。默认值是168—这意味着消息在168小时后不被保留。在

如果您正在寻找一种从特定偏移量读取消息的方法,即不是每次都从头读,请看这里http://kafka-python.readthedocs.org/en/master/apidoc/KafkaConsumer.html
commit()-提交对kafka的读偏移量
seek_to_end()-快进到只使用新到达的消息
seek()-移动到给定的偏移量(可能存储在kafka之外的其他地方)

相关问题 更多 >