zoukankan      html  css  js  c++  java
  • kafka如何防止key相同的消息并发消费

    最开始,我认为只用把消费者设置为单线程消费,就可以避免并发问题。
    因为同一个key,分区一定相同,那么就只会被同一个消费者消费,消费者又是单线程,这样就避免了并发问题

    后面发现,上述的方式没有办法处理rebalace的情况;比如一个消费组最开始只有2个消费者,topic有6个分区,key为1的message在分区3,当再增加一个消费者时,这时会发生rebalance,导致相同key的message,在消费者增加前后,分区不一致,这时可能会出现并发问题;

    所以最终方案,还是需要分布式锁来避免并发问题

  • 相关阅读:
    smbmnt
    smbd
    smbcontrol
    smbclient
    smb.conf
    sleep
    size
    oracle-rman-1
    cURL 学习笔记与总结(5)用 cURL 访问 HTTPS 资源
    Java实现 LeetCode 90 子集 II(二)
  • 原文地址:https://www.cnblogs.com/xsirfly/p/11545164.html
Copyright © 2011-2022 走看看