寻找网站优化公司,如何做kindle电子书下载网站,做美食网站的意义,展示设计公司有哪些适用人群#xff1a;后端开发者、系统架构师、DevOps 工程师
学习目标#xff1a;全面理解网关的分类体系#xff0c;掌握各类网关的核心作用、适用场景和技术特点一、什么是网关#xff08;Gateway#xff09;#xff1f;
网关#xff08;Gateway#xff09; 是连接两…
适用人群后端开发者、系统架构师、DevOps 工程师
学习目标全面理解网关的分类体系掌握各类网关的核心作用、适用场景和技术特点一、什么是网关Gateway
网关Gateway 是连接两个不同网络或系统的中介节点负责协议转换、数据转发、安全控制和流量管理。
网关的核心价值是屏蔽差异、统一入口、增强控制。关键理解网关不是单一技术而是一个分层概念在不同网络层级和应用场景下有不同的实现形式。二、网关的分类体系
网关可以从多个维度进行分类最常用的是按网络协议层级和应用场景来划分
#mermaid-svg-vpmjQu0F9dpIRlhI {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-vpmjQu0F9dpIRlhI .error-icon{fill:#552222;}#mermaid-svg-vpmjQu0F9dpIRlhI .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-vpmjQu0F9dpIRlhI .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-vpmjQu0F9dpIRlhI .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-vpmjQu0F9dpIRlhI .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-vpmjQu0F9dpIRlhI .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-vpmjQu0F9dpIRlhI .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-vpmjQu0F9dpIRlhI .marker{fill:#333333;stroke:#333333;}#mermaid-svg-vpmjQu0F9dpIRlhI .marker.cross{stroke:#333333;}#mermaid-svg-vpmjQu0F9dpIRlhI svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-vpmjQu0F9dpIRlhI .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-vpmjQu0F9dpIRlhI .cluster-label text{fill:#333;}#mermaid-svg-vpmjQu0F9dpIRlhI .cluster-label span{color:#333;}#mermaid-svg-vpmjQu0F9dpIRlhI .label text,#mermaid-svg-vpmjQu0F9dpIRlhI span{fill:#333;color:#333;}#mermaid-svg-vpmjQu0F9dpIRlhI .node rect,#mermaid-svg-vpmjQu0F9dpIRlhI .node circle,#mermaid-svg-vpmjQu0F9dpIRlhI .node ellipse,#mermaid-svg-vpmjQu0F9dpIRlhI .node polygon,#mermaid-svg-vpmjQu0F9dpIRlhI .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-vpmjQu0F9dpIRlhI .node .label{text-align:center;}#mermaid-svg-vpmjQu0F9dpIRlhI .node.clickable{cursor:pointer;}#mermaid-svg-vpmjQu0F9dpIRlhI .arrowheadPath{fill:#333333;}#mermaid-svg-vpmjQu0F9dpIRlhI .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-vpmjQu0F9dpIRlhI .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-vpmjQu0F9dpIRlhI .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-vpmjQu0F9dpIRlhI .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-vpmjQu0F9dpIRlhI .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-vpmjQu0F9dpIRlhI .cluster text{fill:#333;}#mermaid-svg-vpmjQu0F9dpIRlhI .cluster span{color:#333;}#mermaid-svg-vpmjQu0F9dpIRlhI div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-vpmjQu0F9dpIRlhI :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}网关分类按网络协议层级按应用场景网络层网关传输层网关应用层网关API网关微服务网关云原生网关IoT网关数据库网关
下面我们详细展开每一类网关。三、按网络协议层级分类
3.1 网络层网关Layer 3 Gateway定义
工作在 OSI 模型第 3 层网络层主要处理 IP 数据包的路由和转发。典型代表
路由器Router三层交换机Layer 3 Switch核心作用功能说明跨网段通信连接不同 IP 网段实现网络互通路由选择根据路由表选择最优路径NAT 转换私有 IP 与公网 IP 的地址转换基础防火墙基于 IP 地址和端口的访问控制 应用场景
企业内网与互联网的连接数据中心不同 VLAN 之间的通信家庭宽带路由器
⚙️ 技术特点
处理速度快硬件加速不关心应用层协议内容配置相对简单3.2 传输层网关Layer 4 Gateway定义
工作在 OSI 模型第 4 层传输层基于 TCP/UDP 端口进行流量分发和负载均衡。典型代表
L4 负载均衡器如 LVS、F5 BIG-IP L4反向代理如 HAProxy 的 TCP 模式核心作用功能说明端口级负载均衡根据目标端口将流量分发到后端服务器连接复用减少后端服务器的连接压力健康检查监控后端服务的 TCP 连通性SSL 卸载终止 SSL/TLS 连接部分支持 应用场景
数据库读写分离MySQL 主从游戏服务器 TCP 连接分发邮件服务器负载均衡
⚙️ 技术特点
性能极高每秒数十万连接不解析 HTTP 内容配置基于 IP 端口配置示例HAProxy TCP 模式
listen mysql-clusterbind *:3306mode tcpbalance roundrobinserver mysql1 192.168.1.10:3306 checkserver mysql2 192.168.1.11:3306 check3.3 应用层网关Layer 7 Gateway定义
工作在 OSI 模型第 7 层应用层能够解析和理解应用层协议内容如 HTTP、HTTPS。典型代表
L7 负载均衡器如 Nginx、Apache HTTP ServerAPI 网关如 Spring Cloud Gateway、Kong、ApigeeWeb 应用防火墙WAF核心作用功能说明内容感知路由根据 URL 路径、HTTP 头、Cookie 等路由协议转换HTTP/1.1 ↔ HTTP/2 ↔ gRPC内容修改修改请求/响应头、重写 URL高级安全防 XSS、SQL 注入、CC 攻击缓存加速静态资源缓存、动态内容缓存 应用场景
Web 应用的统一入口微服务架构的 API 管理移动 App 的后端服务代理
⚙️ 技术特点
功能丰富但性能相对较低需要解析完整的 HTTP 报文配置灵活支持复杂逻辑配置示例Nginx
server {listen 80;server_name api.example.com;location /users/ {proxy_pass http://user-service;proxy_set_header X-Real-IP $remote_addr;}location /orders/ {proxy_pass http://order-service;add_header Cache-Control no-cache;}
}四、按应用场景分类
4.1 API 网关API Gateway定义
专门为 RESTful API 管理设计的应用层网关是现代微服务架构的核心组件。典型产品
开源Spring Cloud Gateway、Kong、Tyk、Gravitee云服务AWS API Gateway、Azure API Management、阿里云 API 网关企业级Apigee、MuleSoft核心功能功能类别具体能力API 管理API 发布、版本控制、文档生成、测试控制台流量控制限流、熔断、降级、负载均衡安全控制认证OAuth2、JWT、授权、IP 黑白名单监控分析访问日志、性能指标、错误率统计协议适配HTTP/REST ↔ gRPC ↔ WebSocket 转换 适用场景
微服务架构的统一 API 入口对外开放 API 的管理平台移动端、Web 端、第三方应用的后端集成
⚙️ 技术架构特点
基于响应式编程如 Spring Cloud Gateway支持插件化扩展与服务注册中心深度集成4.2 微服务网关Microservices Gateway定义
API 网关在微服务架构中的具体实现更强调与微服务生态的集成。与 API 网关的关系
微服务网关 ⊆ API 网关微服务网关是 API 网关在特定场景下的子集微服务网关特有功能功能说明服务发现集成自动从 Eureka、Nacos 获取服务列表动态路由路由配置可实时更新无需重启链路追踪与 Zipkin、SkyWalking 集成配置中心集成路由规则从 Apollo、Config Server 动态加载 典型架构
#mermaid-svg-FLKUkv5XusPYpQmx {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-FLKUkv5XusPYpQmx .error-icon{fill:#552222;}#mermaid-svg-FLKUkv5XusPYpQmx .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-FLKUkv5XusPYpQmx .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-FLKUkv5XusPYpQmx .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-FLKUkv5XusPYpQmx .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-FLKUkv5XusPYpQmx .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-FLKUkv5XusPYpQmx .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-FLKUkv5XusPYpQmx .marker{fill:#333333;stroke:#333333;}#mermaid-svg-FLKUkv5XusPYpQmx .marker.cross{stroke:#333333;}#mermaid-svg-FLKUkv5XusPYpQmx svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-FLKUkv5XusPYpQmx .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-FLKUkv5XusPYpQmx .cluster-label text{fill:#333;}#mermaid-svg-FLKUkv5XusPYpQmx .cluster-label span{color:#333;}#mermaid-svg-FLKUkv5XusPYpQmx .label text,#mermaid-svg-FLKUkv5XusPYpQmx span{fill:#333;color:#333;}#mermaid-svg-FLKUkv5XusPYpQmx .node rect,#mermaid-svg-FLKUkv5XusPYpQmx .node circle,#mermaid-svg-FLKUkv5XusPYpQmx .node ellipse,#mermaid-svg-FLKUkv5XusPYpQmx .node polygon,#mermaid-svg-FLKUkv5XusPYpQmx .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-FLKUkv5XusPYpQmx .node .label{text-align:center;}#mermaid-svg-FLKUkv5XusPYpQmx .node.clickable{cursor:pointer;}#mermaid-svg-FLKUkv5XusPYpQmx .arrowheadPath{fill:#333333;}#mermaid-svg-FLKUkv5XusPYpQmx .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-FLKUkv5XusPYpQmx .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-FLKUkv5XusPYpQmx .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-FLKUkv5XusPYpQmx .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-FLKUkv5XusPYpQmx .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-FLKUkv5XusPYpQmx .cluster text{fill:#333;}#mermaid-svg-FLKUkv5XusPYpQmx .cluster span{color:#333;}#mermaid-svg-FLKUkv5XusPYpQmx div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-FLKUkv5XusPYpQmx :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}服务发现ClientGatewayNacos/EurekaServiceAServiceBServiceC4.3 云原生网关Cloud Native Gateway定义
为 Kubernetes 和云原生环境优化的网关支持服务网格和声明式配置。典型产品
Ingress ControllerNginx Ingress、Traefik、Istio Gateway服务网格网关Istio Ingress Gateway、Linkerd云厂商网关AWS ALB/NLB、GCP Cloud Load Balancing核心特点特性说明声明式配置通过 Kubernetes Ingress 资源定义路由自动扩缩容与 Kubernetes HPA 集成多集群支持跨集群流量管理零信任安全mTLS、服务间认证 配置示例Kubernetes Ingress
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:name: api-ingress
spec:rules:- host: api.example.comhttp:paths:- path: /userspathType: Prefixbackend:service:name: user-serviceport:number: 80804.4 IoT 网关IoT Gateway定义
连接 物联网设备与云平台的网关处理设备协议转换和边缘计算。典型产品
开源EMQX、ThingsBoard、Kura商业AWS IoT Greengrass、Azure IoT Edge核心功能功能说明协议转换MQTT/CoAP ↔ HTTP/HTTPS边缘计算在设备端进行数据预处理设备管理设备注册、状态监控、固件升级离线支持网络中断时本地缓存数据 应用场景
智能家居设备接入工业物联网数据采集车联网通信4.5 数据库网关Database Gateway定义
为数据库访问提供统一代理和安全控制的网关。典型产品
MySQL Proxy、ProxySQLMongoDB Atlas 的连接代理AWS RDS Proxy核心功能功能说明连接池管理减少数据库连接开销读写分离自动路由读写请求SQL 审计记录和分析 SQL 语句安全防护防止 SQL 注入、敏感数据脱敏
五、各类网关对比总结网关类型工作层级主要协议核心价值典型产品网络层网关Layer 3IP跨网段通信、路由路由器、三层交换机传输层网关Layer 4TCP/UDP端口级负载均衡LVS、HAProxy(TCP)应用层网关Layer 7HTTP/HTTPS内容感知、协议转换Nginx、ApacheAPI 网关Layer 7HTTP/RESTAPI 管理、安全控制Spring Cloud Gateway、Kong微服务网关Layer 7HTTP/REST服务发现、动态路由Spring Cloud Gateway云原生网关Layer 7HTTP/gRPCKubernetes 集成Istio、TraefikIoT 网关Layer 7MQTT/CoAP设备协议转换EMQX、AWS IoT Greengrass数据库网关Layer 7SQL连接池、读写分离ProxySQL、RDS Proxy
六、如何选择合适的网关选择原则按需求层级选择
只需 IP 路由 → 网络层网关需要端口负载均衡 → 传输层网关需要 HTTP 内容处理 → 应用层网关按应用场景选择
微服务架构 → API 网关/微服务网关Kubernetes 环境 → 云原生网关物联网项目 → IoT 网关按性能要求选择
高并发简单转发 → L4 网关复杂业务逻辑 → L7 网关️ 典型架构组合
#mermaid-svg-prGOudAsUakeaoKA {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-prGOudAsUakeaoKA .error-icon{fill:#552222;}#mermaid-svg-prGOudAsUakeaoKA .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-prGOudAsUakeaoKA .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-prGOudAsUakeaoKA .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-prGOudAsUakeaoKA .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-prGOudAsUakeaoKA .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-prGOudAsUakeaoKA .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-prGOudAsUakeaoKA .marker{fill:#333333;stroke:#333333;}#mermaid-svg-prGOudAsUakeaoKA .marker.cross{stroke:#333333;}#mermaid-svg-prGOudAsUakeaoKA svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-prGOudAsUakeaoKA .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-prGOudAsUakeaoKA .cluster-label text{fill:#333;}#mermaid-svg-prGOudAsUakeaoKA .cluster-label span{color:#333;}#mermaid-svg-prGOudAsUakeaoKA .label text,#mermaid-svg-prGOudAsUakeaoKA span{fill:#333;color:#333;}#mermaid-svg-prGOudAsUakeaoKA .node rect,#mermaid-svg-prGOudAsUakeaoKA .node circle,#mermaid-svg-prGOudAsUakeaoKA .node ellipse,#mermaid-svg-prGOudAsUakeaoKA .node polygon,#mermaid-svg-prGOudAsUakeaoKA .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-prGOudAsUakeaoKA .node .label{text-align:center;}#mermaid-svg-prGOudAsUakeaoKA .node.clickable{cursor:pointer;}#mermaid-svg-prGOudAsUakeaoKA .arrowheadPath{fill:#333333;}#mermaid-svg-prGOudAsUakeaoKA .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-prGOudAsUakeaoKA .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-prGOudAsUakeaoKA .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-prGOudAsUakeaoKA .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-prGOudAsUakeaoKA .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-prGOudAsUakeaoKA .cluster text{fill:#333;}#mermaid-svg-prGOudAsUakeaoKA .cluster span{color:#333;}#mermaid-svg-prGOudAsUakeaoKA div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-prGOudAsUakeaoKA :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}L3/L4L4L7gRPCInternetFirewallL4 Load BalancerAPI GatewayMicroserviceAMicroserviceBLegacySystem最佳实践在生产环境中往往多种网关组合使用形成完整的流量治理体系。七、总结
网关是一个分层概念从网络层到应用层都有对应的网关类型API 网关只是应用层网关的一种专门用于 API 管理场景Spring Cloud Gateway 属于微服务网关是 API 网关在 Spring Cloud 生态中的具体实现选择网关要根据具体需求没有“万能”的网关只有“合适”的网关
理解网关的分类体系有助于你在架构设计时做出更合理的技术选型构建高效、安全、可维护的系统。