反向代理+网关部署架构

后端要做的事情:鉴权认证、限流/熔断、日志处理

反向代理+网关部署架构

缺点:需要同时维护反向代理和网关
优点:针对Api服务和网页服务的不同能够灵活处理

统一网关部署架构

缺点:不能够针对网页服务和API服务灵活处理,需要在统一网关层进行分别判断
优点:能避免跨域等问题

后端网关

后端网关(Backend Gateway)是分布式系统架构中的核心组件,主要负责 请求转发、协议转换、流量管控和安全防护,充当客户端与后端服务之间的智能中介。
后端网关(Backend Gateway)是分布式架构中的核心枢纽,主要负责 请求的智能调度、安全管控和系统治理。以下是它处理的具体任务和实际应用场景的深度解析:

一、核心处理任务

1. 流量调度与路由
  • 动态路由
    根据请求路径、Header或参数将请求分发到不同服务(如 /api/orders → 订单服务集群)。
  • 灰度发布
    通过流量染色(如 Header: version=canary)将部分用户请求导流到新版本服务。
  • 多环境路由
    将测试请求自动路由到测试环境(如 Header: env=beta)。

示例(Nginx配置):

location /api/users {
    proxy_pass http://user-service-v2;  # 指向用户服务v2集群
}
2. 安全防护
  • 统一鉴权
    验证JWT/OAuth2令牌,拦截未授权请求(如购物车接口必须携带有效Token)。
  • 防攻击
    封禁高频访问IP(防止CC攻击),过滤SQL注入/XSS恶意参数。
  • 数据脱敏
    对响应中的手机号、身份证等字段自动打码。

示例(Kong网关插件):

# 启用JWT插件
curl -X POST http://kong:8001/apis/{api}/plugins \
    -d "name=jwt"
3. 系统稳定性保障
  • 熔断降级
    当订单服务响应超时5秒,自动切换至兜底逻辑(如返回缓存数据)。
  • 限流控制
    限制秒杀接口每秒最多1000次请求(令牌桶算法)。
  • 负载均衡
    按服务器CPU使用率动态分配流量(替代传统的轮询策略)。

示例(Spring Cloud Gateway熔断配置):

filters:
  - name: CircuitBreaker
    args:
      name: paymentService
      fallbackUri: forward:/fallback/payment
4. 性能优化
  • 缓存加速
    缓存商品分类信息,降低数据库查询压力(TTL=10分钟)。
  • 数据聚合
    合并用户基本信息+积分详情,减少客户端请求次数(BFF模式)。
  • 协议转换
    将HTTP REST请求转换为内部gRPC调用,提升传输效率。

示例(GraphQL网关聚合):

# 一次请求获取用户订单+物流信息
query {
  user(id: "123") {
    orders {
      id
      trackingInfo {
        status
      }
    }
  }
}
5. 可观测性
  • 日志采集
    记录请求耗时、状态码、调用链ID(关联ELK分析)。
  • 监控埋点
    统计API成功率,推送至Prometheus+Grafana仪表盘。
  • 实时告警
    当支付接口错误率>5%时触发企业微信告警。

二、实际业务场景

案例1:电商大促
  • 任务:保障核心链路(商品详情→购物车→支付)
  • 网关动作
    • 支付接口限流5000 QPS
    • 非核心接口(如评价服务)自动降级
    • 恶意爬虫请求拦截率>99%
案例2:金融系统
  • 任务:合规与风控
  • 网关动作
    • 敏感操作(转账)强制二次认证
    • 请求参数加密(SM4国密算法)
    • 操作日志审计留存6个月

三、技术实现对比

功能NginxSpring Cloud GatewayKong
路由灵活性中(需写Lua脚本)高(Java DSL配置)高(声明式配置)
协议支持HTTP/WebSocketHTTP/gRPCHTTP/gRPC/WebSocket
扩展性依赖插件开发集成Spring生态丰富插件市场
性能极高(C语言)高(Netty)高(Nginx基础)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

. . . . .

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值