kafka consumer 如何设置每次重启时从最新数据开始读取

来源:互联网 发布:淘宝店铺公告图片尺寸 编辑:程序博客网 时间:2024/06/07 06:07

    最近在做实时报警的机制,显然我需要程序每次重启时都读取最新数据。但是寻找了半天无论是kafka的java客户端还是python客户端都没有这样的设置参数。没办法只能自己实现了,思路有两种。

  1. 直接操作zookeeper,因为kafka默认的consumer以及offset的信息是存贮在zookeeper中的,我们只要将zookeeper中相应的文件夹删掉,再连接kafka时我们就像新的consumer一样,会从最新数据开始读取
  2. 使用seek_to_end函数,seek_to_end会直接将位置定位到最新数据。但是在之前需要poll一次数据,不然会报没有分配partition的错误。这说明我们的框架也是懒加载的,只有在具体poll数据的时候才会分配partition。kafka-pyhton的样例代码如下:
    from kafka import KafkaConsumer
    consumer = KafkaConsumer('test', group_id='zhy_flow',
    max_poll_records=10)
    res = consumer.poll(10)
    consumer.seek_to_end()
    for msg in consumer:
    print (msg)
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 q币数值充错了怎么办 微信充值商户电话是假了怎么办 微信冲话费冲错了怎么办 淘宝退款不退邮费怎么办 淘金币买的退款怎么办 淘宝退款不退运费怎么办 拼多多不退运费怎么办 开发商不退团购服务费怎么办 支付宝话费充错了怎么办 电视版本低不支持投屏怎么办 绝地求生刺激战场不支持机型怎么办 手机不支持微信运动怎么办 淘宝虚拟商品买家退货退款怎么办 虚拟品申请啦退货退款怎么办 淘宝充值话费没到账怎么办 淘宝全球购买到假货怎么办 车跑路上没油了怎么办 摩托车跑路上没油了怎么办 话费充了不到帐怎么办 网上代充被骗了怎么办 天猫买东西没积分怎么办 购物时不要天猫积分怎么办 618没有天猫积分怎么办 话费充错了号码怎么办? 微信被骗充话费怎么办 微信话费充多了怎么办 睫毛烫的太卷了怎么办 烫完睫毛太卷了怎么办 烫睫毛太卷了怎么办 用微信充话费充错了怎么办 微信给空号充话费了怎么办 微信充话费充错号码是空号怎么办 淘宝充流量不到账怎么办 微信退货不退款怎么办 京东话费交错号怎么办? 微信缴费错了怎么办 给手机充话费被退款怎么办 买到假货淘宝商家已关店怎么办 手机刷错系统了怎么办 苹果手机成砖了怎么办 苹果6p变砖头怎么办