原生iOS解决方案
API网关白皮书
第一章 产品概述
API网关平台是京东交易流程的主要流量入口,是客户端和微服务之间重要的请求转发枢纽,可以简单、快速、低成本、低风险的实现微服务聚合。该平台具有高性能、低延时、可承载大规模访问的系统特性,提供了精细化流控、身份认证与鉴权、数据监控报警等功能,适用于各种企业级用户,对实现服务多端统一,构建API生态有重要意义。
第二章 产品优势
2.1 方便快捷
安全的实现多端统一,一套服务,多端输出,大大节省开发成本。
2.2 高性能低延时
API 网关经过多次的升级改造和精细的打磨,在高并发下一直保证稳定可靠性,同时还能保证较低的延时,为您的后端服务提供高保障高效率的网关功能。
2.3 安全稳定
API 网关提供严格的权限管理功能、精准的流量控制功能、全面的监控报警功能,经历多年大促考验,无线场景深厚经验积累,让您的服务安全、稳定、可控。
第三章 应用场景
3.1 统一标准
API网关,就是为了解放客户端与服务端而存在的。对于客户端,使开放给客户端的接口标准统一,进而降低客户端的接入成本;对于服务端,使服务端无需关注接口暴露在公网面临的问题而着眼于业务的实现,进而提升开发效率。
第四章 总体设计
4.1 产品架构
4.2 技术架构
4.3 部署架构
第五章 产品功能
5.1 调用安全
支持验签机制,访问权限控制,跨域校验,AKS加解密。
5.2 精细化流控
提供限流功能,可控制单位时间内API允许被调用次数,用来保护后端服务,可以根据 API的重要程度来配置不同条件的流控,从而保障重要业务的稳定运行。限流维度为秒级,限流方法为熔断。
5.3 权限控制
用户以 APP 作为请求 API 的身份,网关支持针对 APP 的权限控制。
只有已经获得授权的 APP 才能请求相应的 API。
API 提供者可以解除某个 APP 的对其的调用权限。
5.4 数据监控报警
提供实时、可视化、可自定义的 API 监控,能够清楚的了解 API 的运行状况和用户的行为习惯。
自定义报警规则和报警人,超过阀值则进行报警,降低故障处理时间。
第六章 部署环境要求
6.1 硬件要求
- 服务器资源
假设系统达到10000TPS,服务建议部署资源如下:
用途 | 虚拟化程度 | 配置说明 | 数量 |
---|---|---|---|
网关服务 | 容器 | 8C16G100G | 2 |
网关开放平台 | 容器 | 8C16G100G | 1 |
Blue平台 | 容器 | 8C16G100G | 1 |
- 存储资源
假设系统达到10000TPS,服务建议部署资源如下:
主要存储内容 | 存储位置 | 容量 | 说明 |
---|---|---|---|
API相关信息 | mysql | 10G | 每年 |
流控配置信息 | redis | 10G | 每年 |
数据上报 | Kafka | 100G | 每年 |
数据统计 | storm | 100G | 每年 |
日志数据 | hbase | 5T | 每季度 |
6.2 软件要求
- 操作系统
建议CentOS 7.4;
- 中间件
软件名称 | 软件版本 | 说明 |
---|---|---|
MySQL | 5.7 | |
Redis | 3.2.3 | |
Kafka | 2.0 | |
Hbase | 2.1.1 | |
Storm |