远行API网关(200428)

API 网关(API
Gateway),是提供API托管服务,涵盖API发布、管理、运维、售卖的全生命周期管理。辅助用户简单、快速、低成本、低风险的实现微服务聚合、前后端分离、系统集成,向合作伙伴、开发者开放功能和数据。核心的API网关功能可以参考如下:

API 生命周期管理

支持包括API 注册和接入发布、API 测试、API 下线等生命周期管理功能。支持 API 日常管理、API
版本管理、API 快速回滚等维护功能。基本需要覆盖API管理全生命周期。

全面的安全防护

支持多种认证方式,支持 HMAC (SHA-1,SHA-256) 算法签名。支持 HTTPS 协议,支持 SSL
加密。防攻击、防注入、请求防重放、请求防篡改。(没看到是否支持Auth2.0和具体的Token验证机制)

灵活的权限控制

用户以 APP 作为请求 API 的身份,网关支持针对 APP 的权限控制。只有已经获得授权的 APP 才能请求相应的
API。API 提供者可以将调用某个API 的权限主动授予给某个APP。若 API上架到 API 市场,购买者可以将已购买的 API
授权给自己的 APP。(没看到是否基于IP进行控制,还是基于Token进行控制,即对于消费方分配独立的Token信息)

精准的流量控制

流量控制可以用于管控
API的被访问频率、APP的请求频率、用户的请求频率。流量控制的时间单位可以是分钟、小时、天。支持流控例外,允许设置特殊的 APP
或者用户。(流量控制只支持服务运行频率,没看到可以基于数据量进行流控)

请求校验

支持参数类型、参数值(范围、枚举、正则、Json Schema)校验,无效校验会被 API
网关直接拒绝,以减少无效请求对后端造成的资源浪费,大幅降低后端服务的处理成本。(这个功能实际有一定的用处,并不会牺牲太多的性能,但是会实现一些简单的参数完整性校验能力。)

数据转换和映射

通过配置映射规则,实现前、后端数据翻译。支持前端请求的数据转换。支持返回结果的数据转换。(暂时不清楚数据转换功能能够实现的能力)

API服务监控报警

提供可视化的API实时监控,包括:调用量、流量大小、响应时间、错误率,在陆续增加维度。支持历史情况查询,以便统筹分析。可配置预警方式(短信、Email),订阅预警信息,以便实时掌握API运行情况。

自动工具

自动生成 API 文档,可供在线查看。API 网关提供多种语言 SDK 的示例。降低 API
的运维成本。提供可视化的界面调试工具,快速测试,快速上线。(当前网上也有不少的API接口文档自动生成工具可选)

API 市场

可将 API 上架到 API 市场,供更多开发者采购和使用。
从整个功能的介绍可以看到对于API的全生命周期管理(注册,接入,代理,路由,负载均衡),安全,权限,流量控制,监控和告警等是所有API网关都必须具备的功能。而对于API市场,API文档自动生成,请求的参数校验,数据的转换等则可以看做是扩展功能。
对于API市场往往是一个重要的扩展能力,即对于API接口服务可以做为商品一样进行订购和使用,并根据相应的调用次数,调用的数据量等条件进行计费处理。这我们我们说的PaaS平台的服务层能力作为产品和服务发布,能够进行订购生产订单,能够进行计费等完全是一个道理。