摘要: 在跨微服务场景下(生产者和消费者分属不同服务),“生产者开启事务”与“消费者提交全局事务”看似是两个独立操作,但 Kafka 通过 “事务标识绑定”和“事务状态协同” 确保它们属于“逻辑上的同一事务”,核心是通过事务 ID(Transaction ID)和事务日志(__transaction_sta 阅读全文
posted @ 2025-07-17 14:01 认真的刻刀 阅读(32) 评论(0) 推荐(0)
摘要: Kafka 的 精确一次性语义(Exactly-Once Semantics) 是指消息从生产者发送到消费者处理的全链路中,每条消息只会被处理且仅处理一次,既不会丢失,也不会重复,是 Kafka 消息传递语义中最高级别的可靠性保证。 为什么需要精确一次性语义? 在分布式系统中,消息传递可能因网络故障 阅读全文
posted @ 2025-07-17 13:52 认真的刻刀 阅读(48) 评论(0) 推荐(1)
摘要: 是的,这是 Kafka Consumer 中典型的“消息丢失”场景——auto commit(自动提交)触发时,即使消息未处理完成,offset 也会被提交,导致未处理的消息被视为“已消费”,后续无法重新拉取。 具体过程拆解: 假设 Consumer 配置了 enable.auto.commit=t 阅读全文
posted @ 2025-07-17 10:22 认真的刻刀 阅读(75) 评论(0) 推荐(0)
摘要: 是的,如果消息仅写入 Page Cache(未刷盘)时 Broker 崩溃,消息会丢失。 核心原因:Page Cache 的本质是“内存缓存”,不具备持久化能力 Page Cache 是操作系统的内存级缓存,数据存储在内存中。而内存的特性是“断电/进程崩溃后数据丢失”——当 Broker 进程崩溃或 阅读全文
posted @ 2025-07-17 10:11 认真的刻刀 阅读(18) 评论(0) 推荐(0)