API 网关 API Gateway架构设计方案
2023-10-30 14:15:55 46 举报
AI智能生成
API 网关是提供服务开放和共享的 PaaS 平台,帮助企业在内部多个系统之间,或者内部系统与合作伙伴以及第三方系统之间实现跨系统、跨协议的服务能力互通。提供服务 API 的全生命周期管理、流量管理和服务治理能力。
作者其他创作
大纲/内容
核心优势
云原生
基于云原生标准组件 Envoy 和 Istio 构建,支持水平扩容,无单点故障,可以与服务网格天然集成
全流量管控
支持服务级和 API 级精细化流量治理,提供限流、熔断、降级、重试、灰度发布等丰富的流量治理能力
异构融合
支持 gRPC、Dubbo、WebService、HTTP RESTFUL 等异构技术栈无缝集成,有效利用业务遗留系统
安全可控
支持丰富的用户认证方式和多层级授权管理,使用 IP 黑白名单机制,有效保护敏感资源访问
企业级特性
提供租户和项目集隔离、多环境统一管理、操作审计、组件监控以及监控告警等能力
灵活可扩展
提供增强级 Lua 扩展框架,基于 WebAssembly 多语言扩展插件,用户可以自由选择插件开发语言
典型应用场景
对外能力开放
子主题
内部业务集成
子主题
交付标准化
子主题
微服务改造后,企业内外部系统实现开放和共享面临哪些挑战?
缺少应对突发流量手段
痛点描述
传统方式通过控制入口流量,无法解决个别服务在突发流量压力下不能正常响应的问题,
导致异常快速传递到上游服务,最终导致整个系统雪崩
导致异常快速传递到上游服务,最终导致整个系统雪崩
解决方案
通过 API 级流量控制、熔断、降级等服务治理功能,
可以有效保障电商大促、突发事件等场景下关键服务正常运行,降低系统性风险发生概率
可以有效保障电商大促、突发事件等场景下关键服务正常运行,降低系统性风险发生概率
重复开发通用功能
痛点描述
服务对外开放需要考虑用户认证、鉴权、限流、监控等一系列通用能力,
多个服务需要重复开发相关功能,增加了开发成本,降低了开发效率
多个服务需要重复开发相关功能,增加了开发成本,降低了开发效率
解决方案
通过统一认证鉴权机制、限流、监控、灰度发布等对外开放服务所需的通用功能,
开发人员无需重复开发通用功能,只需专注于业务开发
开发人员无需重复开发通用功能,只需专注于业务开发
非 RESTFUL 接口开放难
痛点描述
传统基于 Web Service、gRPC 和 Dubbo RPC
等非 RESTFUL 接口标准开发的应用,无法直接对外暴露服务
等非 RESTFUL 接口标准开发的应用,无法直接对外暴露服务
解决方案
通过协议转化功能,支持将 Web Service、gRPC 和 Dubbo RPC
等接口以 RESTFUL 接口形式对外开放,用户无需适配开发新的接口标准
等接口以 RESTFUL 接口形式对外开放,用户无需适配开发新的接口标准
缺少 API 灰度发布机制
痛点描述
随着业务发展不可避免多个版本同时在线的情况,
存在多个版本管理、灰度测试等一系列问题,缺少 API 灰度发布机制,严重影响管理效率
存在多个版本管理、灰度测试等一系列问题,缺少 API 灰度发布机制,严重影响管理效率
解决方案
通过服务多个版本发布,支持配置各版本流量百分比、
根据请求参数路由请求到不同版本,满足不同灰度版本要求
根据请求参数路由请求到不同版本,满足不同灰度版本要求
API网关产品架构设计
子主题
核心功能
API 全生命周期管理
支持 API 发布、API 下线、API 版本管理等生命周期管理功能
统一认证鉴权
支持 AK/SK、JWT 、OAuth2 等认证方式,提供网关、服务和 API 级鉴权管理功能
服务治理
支持多场景流控、静态/动态降级、超时重试、缓存和熔断等功能
服务路由
服务路由
支持根据请求方法、Path、Host、Header、Query String 动态路由,以及负载均衡和版本分流
支持根据请求方法、Path、Host、Header、Query String 动态路由,以及负载均衡和版本分流
安全防护
支持 IP 黑白名单,支持 CORS 和 JSONP 跨域访问标准
协议转换
支持 Web Service 、gRPC 和 Dubbo RPC 接口转为 RESTFUL 接口对外开放
数据转换
支持请求 Header、 Query String 转换,以及请求 Path 重写
应用集成
支持以低代码可视化方式编排上百种协议类型的 API
运维监控
支持查看服务或接口调用记录和调用统计,支持自定义配置告警规则
收藏
0 条评论
下一页