在单体拆成微服务之后,一个最容易被低估的事实是:网络调用不再具备单进程函数调用的可靠性。HTTP/RPC 天然存在超时、重试、乱序、重复投递,而服务间的调用链一旦拉长,任何一环的抖动都会被下游放大。于是「幂等、限流、熔断」这三件事,从"可选优化"变成了"生产底线"。本文不打算罗列概念,而是从我在生产环境踩过的坑出发,讲清楚每一层的设计取舍、参数调优与排查思路。
一、为什么这三件事必须放在一起设计
很多团队把幂等、限流、熔断当成三个独立的工具分别接入,结果往往是:限流拦住了突发流量,但重试风暴依然打垮了下游;幂等保证了重复请求不重复扣款,但熔断打开后客户端还在无脑重试。它们的本质其实是同一件事的三个切面——在不可靠的分布式环境里,保证系统在异常流量下仍然做出正确且可预期的行为。