当前位置: 首页 > news >正文

【网关】互联网公司的接入网关和业务网关怎么设计

网关

网关基础知识
RGW全称 Red GateWay :小红书网关(网关英文:Gateway; 接入网关:Access Gateway)
网关(通用):Gateway
接入网关:API Gateway、Access Gateway
业务网关:Business Gateway
网关服务器:Gateway Server
网关设备:Gateway Device
1.2 GSLB & LB
在这里插入图片描述

下面简明阐述 LBGSLB 的含义、区别及应用场景:

1. LB(负载均衡,Load Balancer)

含义

  • LB 是 “Load Balancer” 的缩写,中文意思是负载均衡
  • 就是将用户的网络流量或请求合理分配到多台后端服务器,从而提升系统吞吐、保证高可用性、防止单点故障。

典型类型

  • L4 LB(四层负载均衡):基于 TCP/UDP 层(如 LVS)
  • L7 LB(七层负载均衡):基于 HTTP/HTTPS 层(如 Nginx、HAProxy)

应用场景

  • 一个机房、一个数据中心中对业务服务器的流量分担
  • 网站、API 接口、App 后端等本地流量调度

2. GSLB(全局服务器负载均衡,Global Server Load Balancing)

含义

  • GSLB 是 “Global Server Load Balancing” 的缩写,中文通常叫全局负载均衡全局服务器负载均衡
  • 是在不同地域、不同数据中心/机房,根据用户的地理位置、网络状况等,把流量智能分配到多个跨地域的业务节点/机房/云上资源。

主要作用

  • 用户就近访问,减少延迟、提升体验
  • 业务级容灾:主节点出故障可自动切换到其它区域节点
  • 跨地区流量调度,例如 CDN、全球化应用部署

实现方式

  • 常采用智能 DNS(解析时返回最佳节点的IP)
  • 或通过“Anycast”/全局流量调度设备实现

应用场景

  • 互联网公司在全国或全球多地部署服务(如 B 站、阿里、腾讯、Netflix)
  • 灾备、多活、就近服务等需求
  • 全球 CDN 和视频分发加速

3. 区别总结

项目LBGSLB
全称Load BalancerGlobal Server Load Balancer
级别一般针对单一机房/数据中心跨多个机房/数据中心/地理区域
目标服务器实例之间流量均衡节点/机房/区域之间流量智能调度
技术TCP转发、反向代理等智能DNS、Anycast、全局调度平台
主要场景本地高可用/扩容跨地域容灾、全球多点服务、就近接入

4. 总结

  • LB:本地(单个机房或云区)的负载均衡,分发流量到多台后端服务器,提高可用性和扩展性。
  • GSLB:跨地域/机房/云的流量调度,用户访问时根据地域、健康检测等分配到最优的数据中心,保障全球流量智能分发和业务连续性。
    如需更深入的架构细节或实际产品选型(如 AWS ELB/GSLB、阿里云全局流量调度等)可补充说明。
    二、网关设计
    互联网公司的接入网关(API Gateway/Access Gateway)和业务网关(Business Gateway)在系统架构中担负着不同的职责,合理的设计对于高可用、高扩展、安全性至关重要。以下分别针对接入网关业务网关的设计思路、常见功能、架构建议、实现要点进行说明。

一、接入网关(API Gateway/Access Gateway)

1. 定义和作用

  • 定义:服务于所有客户端请求的统一入口,负责流量接入、协议转换、安全验证等。
  • 作用
    • 屏蔽后端架构细节,对外提供统一API接口
    • 统一安全校验(如认证、鉴权、IP黑白名单、流控)
    • 动静态内容分发
    • 负载均衡、限流、降级等

2. 设计要点

请求处理流程
Client -> [Access Gateway] -> [业务网关/后端服务]
常见功能
  • 认证鉴权(如OAuth2/JWT/Session等)
  • HTTPS接入与证书管理
  • 流量控制与限流(如qps限制、用户维度容量保护)
  • 日志采集与监控
  • 熔断与降级
  • 请求路由与API聚合
  • 协议转换(如HTTP2、WebSocket)
  • 安全防护(SQL注入、XSS、CC攻击防护)
  • 动态配置、灰度发布、AB测试支持
架构建议
  • 高可用分布式部署:通过反向代理(如Nginx、Envoy、Kong等)+ 服务实例自注册发现。
  • 网关可扩展:支持自定义插件扩展,集成日志、监控、鉴权等模块。
  • 支持横向扩展:无状态设计,通过LB分流。
  • 管控台和配置中心:需配备可视化管理入口,动态管理路由、限流策略等。
示例架构
|--------------------|
|  Client(Mobile,Web)|
|--------------------||---------------   [负载均衡]|  Access GW   |-----> 鉴权、认证、流控、日志...---------------|--------------- |  业务网关层  |-----> 各业务微服务---------------|---------------| 数据服务等  |---------------

二、业务网关(Biz Gateway)

1. 定义和作用

  • 定义:处于接入网关与业务服务之间的中枢系统,聚合/编排多个后端微服务,为特定业务场景提供统一接口。
  • 作用
    • 面向业务、协议、领域整合
    • API聚合(组合调用多个后端服务)
    • 灰度发布、服务编排
    • 策略路由、服务适配(如A/B Test或根据不同条件路由到不同服务)
    • 隐藏后端复杂性或服务拆分细节

2. 主要功能

  • 业务API聚合和编排
  • 二次鉴权、用户授权、业务日志补全
  • 针对多版本/多租户的路由
  • 业务容错、补偿、重试机制
  • 域数据缓存(如用户画像、短时性业务数据缓存)
  • 上下文传递与透传(TraceId、用户态)

3. 架构与设计要点

  • 分层架构:解耦通用接入逻辑和封装业务逻辑
  • 服务聚合/编排:如GraphQL、BFF(Backend For Frontend)模式
  • 高内聚低耦合:可灵活拦截、改写、路由、容错
  • 异步调用/并发聚合:为前端提供更快响应
  • 可观测:埋点、指标、链路追踪
  • 灰度、回滚支持:config中心驱动,动态切流

三、设计落地建议

1. 选型建议

  • 接入网关:
    • 业界主流可选Nginx、Kong、Envoy、APISIX
    • 云原生可考虑Kubernetes Ingress Controller(如Istio、Traefik)
  • 业务网关:
    • 自研居多(因面向具体业务编排和策略强)
    • GraphQL/BFF架构适合前端多端需求和API聚合

2. 典型設計模式

  • 三层网关模式:负载均衡→接入网关→业务网关
  • 多级限流与隔离: 在接入和业务网关分别限流,隔离影响范围
  • 服务注册与发现: 可用Consul、Eureka等

3. 典型数据流

[用户请求] -> [负载均衡] -> [接入网关] -> [业务网关] -> [后端服务/微服务]

四、实际案例拓展

阿里/腾讯等互联网公司参考案例

  • 接入网关:OPGateway、Tengine、APISIX等
  • 业务网关:API聚合层(如淘宝的API Gateway有独立的「业务聚合网关」层)
  • 高并发下机制:如分片限流、调度隔离、弹性扩容

五、总结

  • 接入网关偏通用侧重安全和接入管控,业务网关侧重业务聚合与策略隔离编排
  • 两者解耦,便于横向扩展、针对不同需求演进,保障架构稳定性与灵活性
    如果需要参考具体的开源网关或业务编排解决方案,也可以给出更详细的案例或代码片段。
http://www.xdnf.cn/news/1021825.html

相关文章:

  • 期货反向跟单—盘后注意事项(二)管理事项
  • 企业司法涉诉API (QYGL8271) 技术文档:原始字段全解与风控应用 | 天远API
  • 将 App 安装到 iPhone 真机上测试
  • 【jmeter】报告怎么看
  • 提升开发思维的设计模式(上)
  • 行为模式-迭代器模式
  • JVM常见面试题
  • redis-7.4.4使用
  • 详解deeplabv3+改进思路
  • conda pack迁出环境异常
  • AKS升级路线最佳实践方案
  • dockercompose部署应用
  • 实战案例-JESD204B 多器件同步
  • 协同开发中的移动端网页调试流程:一次团队实战的经验总结(含WebDebugX)
  • Unity 接入抖音小游戏一
  • linux 黑马 第1-2章
  • ELK日志采集系统
  • 通过iframe使用Jupyter notebook
  • shell、bash、cmd、git 和 PowerShell 的区别与关系的详细解析
  • 吃透 Golang 基础:函数
  • 混合云战略规划深度解析:多云管理的技术架构与治理框架
  • 动态规划: 背包DP大合集
  • 【android bluetooth 框架分析 04】【bt-framework 层详解 7】【AdapterProperties介绍】
  • 触觉智能RK3576核心板,工业应用之4K超高清HDMI IN视频输入
  • 基于Python的二手房源信息爬取与分析的设计和实现,7000字论文编写
  • 改写爬虫, unsplash 图片爬虫 (网站改动了,重写爬虫)
  • 给element-plus的table表格加上连续序号
  • Kubernetes 从入门到精通-资源限制
  • 清理电脑C磁盘,方法N:使用【360软件】中的【清理C盘空间】
  • Visual Studio Code 1.101.0 官方版