面试现场,候选人把API网关、负载均衡、反向代理混成一锅粥。面试官没打断,只是在本子上画了个圈——这是今年第17个。
它们确实长得像。都蹲在客户端和服务器之间,都干转发请求的体力活。但一个管路由,一个管流量,一个管隐身,分工细得像火锅店的蘸料台。
负载均衡是最老实的那个。Nginx、HAProxy、AWS ALB,核心就一句:「别把鸡蛋放一个篮子里」。4台服务器挂了一台?流量秒切,用户无感知。它不管你是谁,只算哪台机器还有空。
反向代理更像个门房。Kong、Traefik、Envoy,对外只暴露一个IP,后端藏得严严实实。SSL卸载、静态缓存、防DDoS,脏活累活全包了。用户以为自己在跟一台服务器聊天,其实后面站着一整个集群。
API网关是家里管账的。Spring Cloud Gateway、AWS API Gateway、Kong Enterprise,鉴权、限流、计费、协议转换,全得经它手。微服务拆成50个?它给你统一入口,顺便把REST翻译成gRPC。
混在一起用的团队我见过太多。用网关做负载均衡,性能掉三成;用反向代理管鉴权,日志里全是明文token。最惨的一个,生产环境三种各部署了两套,账单比架构图还复杂。
上周有个读者留言:「我们全用Nginx,跑了五年没出事」。我回他:「没出事和没埋雷是两回事。」他三天后私信我,说正在拆网关层。
热门跟贴