Kafka Share Groups如何把事件流变成任务队列
Kafka传统消费者组把分区作为最小分配单位,消费者数量一旦超过分区数,多出的实例就只能空闲;逐条确认、失败重试、毒消息隔离和峰值扩容也往往需要业务自行补齐。Kafka 4.x引入Share Groups,以记录级获取锁替代分区独占,并提供ACCEPT、RELEASE、REJECT、RENEW四种处理结果,让多个消费者能够同时协作处理同一分区中的不同任务。本文结合Kafka 4.3.x,从工作原理、记录状态机、顺序与投递语义、Java客户端实现、关键配置、幂等设计、长任务续锁、保留策略和迁移步骤等方面展开,说明Share Groups适合哪些任务队列场景,又为何不能简单视为RabbitMQ等传统消息队列的完全替代品。