Kafka 中的 Consumer Group 与 Rebalance 在 Spring Boot 中的应用
理解 Kafka 如何将分区分配给消费者组,何时发生 Rebalance 以及如何在 Spring Boot 应用中减少 Rebalance 的影响。
理解 Kafka 如何将分区分配给消费者组,何时发生 Rebalance 以及如何在 Spring Boot 应用中减少 Rebalance 的影响。
配置 acks、enable.idempotence、batch.size 和 linger.ms 来确保 Kafka producer 不丢失消息、不重复发送并达到高吞吐量。
使用 Spring Boot 和 Kafka 实现 Saga orchestration 模式。预订机票、酒店、支付,以及在某一步失败时自动补偿。
使用 Confluent Schema Registry 与 Avro 和 Protobuf 在 Spring Boot 3 中控制 Kafka 消息格式,并安全地演进 schema
使用 Kafka 作为订单事件日志:记录不可变事件、通过重放重建状态、用 projection 构建读模型。附带应用前必知的限制。
使用 Debezium 读取 PostgreSQL 的 WAL,将所有数据更改推送到 Kafka,通过 Spring Boot 消费,无需修改数据写入代码。
同时写入数据库和发送 Kafka 很容易丢失事件。本文介绍如何用 Spring Boot 3 和 Kafka 实现 Outbox 模式,保证两边始终一致。
什么是 consumer lag,如何通过 CLI、AdminClient 和 Micrometer 进行测量,应该监控的 broker/producer/consumer 指标以及如何设置合理的告警。
Kafka 如何根据 key 选择 partition,如何选择 key 以保持消息顺序同时避免热 partition,以及 Spring Boot 中常见的错误。
在 Spring Boot 3 中为 Kafka consumer 配置 blocking 和 non-blocking 重试,将失败的消息推送到 dead letter topic 并编写测试验证。
重新平衡如何运作、为什么它导致消费者停止处理消息,以及通过poll配置、协作重新平衡和静态成员身份来最小化它的方法。
了解 acks、retries 和幂等性如何配合,确保 producer 向 Kafka 发送数据时消息不丢失、不重复。
解释 Kafka 的三个核心概念——topic、partition、offset——附带 Spring Boot 的 producer/consumer 示例。