2. API网关核心概念与原理
API网关是微服务架构的流量入口与治理枢纽,面试官通常从定义理解、功能掌握、架构认知、选型判断四个维度考察候选人的基础功底。本章围绕网关核心概念与高频面试问答展开,配有回答框架图和追问路径图,帮助构建结构化的应答思维。
核心功能速览
| 功能 | 说明 | 面试关键词 |
|---|---|---|
| 路由转发 | 根据请求路径/Header/权重分发至后端服务 | 动态路由、负载均衡、服务发现 |
| 认证授权 | 统一身份认证与权限校验 | JWT、OAuth2、RBAC、校验 |
| 限流熔断 | 保护后端服务不被突发流量冲垮 | 令牌桶、滑动窗口、熔断降级 |
| 协议转换 | HTTP/HTTPS/gRPC/Dubbo等协议互转 | 协议适配、异构系统对接 |
| 日志监控 | 全链路日志采集与指标上报 | 可观测性、Prometheus、链路追踪 |
面试回答框架图
以下框架适用于“请介绍API网关”等开放式问题,帮助面试者从点及面、层层递进地组织答案。
📌 面试问题
请简要说明API网关的核心功能及其在微服务架构中的作用。
🧩 回答框架:概念定位 → 功能列举(3-4个) → 架构价值 → 总结升华
💡 示例回答:API网关是微服务架构的统一入口,核心功能包括路由转发、认证授权、限流熔断和协议转换。它屏蔽后端服务细节,提供安全防护与流量治理,是微服务架构的关键基础设施与服务治理的核心节点。
🔍 可能追问:① 网关和普通反向代理(如Nginx)有什么区别?② 网关如何处理跨域请求?
📌 面试问题
常见的API网关架构有哪些?它们各自的优缺点是什么?
🧩 回答框架:架构分类(3类) → 对比优缺 → 场景选型建议
💡 示例回答:常见架构包括单体网关(如Kong)、分布式网关(如Spring Cloud Gateway)和云原生网关(K8s Ingress/API Gateway)。单体网关部署简单,适合中小规模;分布式网关扩展性好但运维复杂;云原生网关与容器生态融合,是发展主线。
🔍 可能追问:① 为什么大厂倾向于使用分布式网关?② 网关如何保证自身的高可用?
📌 面试问题
API网关如何实现限流?请描述常见的限流算法及其适用场景。
🧩 回答框架:限流目标 → 算法对比(2-3种) → 网关实现 → 分布式扩展
💡 示例回答:网关限流常用令牌桶和滑动窗口算法。令牌桶允许一定突发流量,适合流量波动较大的业务;滑动窗口计数更精确,适合严格控制阈值的场景。可在网关层配置路由级限流规则,结合Redis实现分布式限流,支持动态调整阈值。
🔍 可能追问:① 令牌桶和漏桶算法的核心区别?② 分布式限流如何解决时钟一致性问题?
面试追问路径图
面试官围绕网关主题的追问通常沿四个方向展开。提前预判追问路径,可以更有针对性地准备深度内容。
项目案例实战
| 项目要素 | 内容 |
|---|---|
| 项目名称 | 企业级统一API网关平台建设 |
| 业务背景 | 微服务架构演进过程中,多业务线各自暴露接口,缺乏统一入口,安全与治理能力不足;需要建设统一的API网关平台。 |
| 规模指标 | 日均处理10亿+请求;管理200+微服务;网关集群节点50+;峰值QPS 12万+ |
| 技术栈 | Kong / Spring Cloud Gateway、Redis、Nacos、Prometheus + Grafana、K8s + Istio |