标签频道
热key
该标签下的文章、提问与讨论帖。
【背景】 我负责一条交易消息链路:Kafka 3.5(KRaft,3 broker)→ 消费端 Spring Boot。业务硬要求「同一商户的消息必须按序消费」(下单→支付→发货),所以生产端统一用 "hash(merchant_id)"
结论先行:热 key 是「单点」问题,不是「集群」问题——加分片、扩容集群对它完全无效,解药只有 localcache、key 分片、异步失效这三招。 下面是一次真实的秒杀前爬虫扫描事故,从止血到治本 40 分钟走完,P99 从 8s 回到
«结论先行:Kafka 消费组"加机器"失效、消费延迟雪崩,最常见的根因不是消费者太慢,而是热 key 把所有流量钉死在同一个分区、同一个消费者实例上。分区并行度再高,对单个 key 来说永远是 1。» 一、现象与背景 去年双 11 前压测
«先抛一个我想听大家拍砖的问题:你们线上有没有过这种诡异现象——整机 16 核,CPU 只用了 6%,Kafka lag 却在稳定上涨,加机器也救不回来? 如果是,八成不是 broker 的锅,也不是 rebalance 的锅,而是「有序性
结论先行:热 key 的根因不是「Redis 慢」,而是集群分片均衡被单 key 击穿——所有读都落在同一个分片上,其余 7 个分片在空转。解法不是加机器、不是调 Redis,而是把 90% 的读拦在应用进程内(本地缓存),用一致性令牌控制
文
标题
摘要