Kafka只能保证分区内消息顺序有序,无法保证全局有序
- 生产者:通过分区的leader副本负责数据顺序写入,来保证消息顺序性
- 消费者:同一个分区内的消息只能被一个group里的一个消费者消费,保证分区内消费有序
kafka 每个 partition 中的消息在写入时都是有序的,消费时, 每个 partition 只能被每
一个 group 中的一个消费者消费,保证了消费时也是有序的。
整个 topic 不保证有序。如果为了保证 topic 整个有序,那么将 partition 调整为 1
为什么做不到全局有序:
因为消息会发送到不一样的分区,分区之间发送的顺序是无法保证的