分区排序:Kafka 通过分区来保证消息的顺序。同一分区内的消息是有序的,但不同分区之间的消息则不保证顺序。
配置生产者:通过配置生产者,可以减少消息乱序的可能性。
开启幂等性:max.in.flight.requests.per.connection 需要设置小于等于 5 。
未开启幂等性:max.in.flight.requests.per.connection 需要设置为 1 。
配置消费者:通过配置消费者,可以确保消息按顺序处理
如果一个消费者组中有多个消费者,可以通过调整消费者的数量,确保每个分区只由一个消费者处理。