1.消费者自动提交偏移量
2.消费者手动提交偏移量
当我们的消费者Poll数据到Consumer当要更新offset时挂掉了此时我们的offect并没有被修改成功当Consumer好了时在重新读取的offect还是3所以会造成数据的重复消费
那些情景会造成消息漏消费?
先提交offset,后消费,有可能造成数据的重复
如何保证有序性
因为Kafka只能保证分区内有序当我们有多个分区但是想保证我们数据的有序性时我们可以使用一个生产者一个消费者一个分区,或者我们可以指定想要有序的数据到同一个分区
生产者
发送消息的分区策略,根据Key来指定分区。
有顺序要求的消息,key要一样,即考虑使用业务唯一ID,这样就会被发送到相同的分区中
kafka集群
同一个分区中的数据天然有序,分区相当于是个双端队列
消费者
同一个主题下的分区,只能被同一个消费者组中的一个消费者消费。