服务化管理
服务协议
- HTTP/1.1
- HTTP/2
- HTTP/3(QUIC)
- MQTT
服务路由规则
- IP 过滤
- URL 地址路径匹配
- HTTP 请求头部信息匹配
- HTTP 请求动作过滤
服务发现
- 内置Etcd
容错设计
- 限流
- 熔断
- 重试
- 超时
- 服务降级
发布管理
- 蓝绿发布(流量切换)
- 灰度发布(流量调度)
API管理
- 后端多API聚合调用
- 后端API流程编排
- Swagger/SDK/文档(需要后端支持Swagger)
安全相关
- 用户 HTTPS 证书和私钥管理
- IP地址黑白名单
- API签名验证(HMAC)
- JWT Token 验证
- OAuth2 支持
- Let’s Encrpt证书自动化管理
插件化管理
- 新增、导入、编辑、查看、删除过滤插件
- 插件组合 Pipeline 编排,进行流程控制
- 用户可以定制插件,进行二次开发
Service Mesh
- Mesh Sidecar Ingress/Egress
- Mesh Service Registry(兼容 Eureka/Consul/Nacos)
- Mesh 限流/熔断/重试/超时
FaaS
- FaaS Function 以SideCar形式部署用户业务逻辑的docker 镜像, 自动伸缩Function实例个数。
- FaaS Function 事件订阅(队列,定时任务)
- FaaS Function 状态监控,资源消耗,延迟,请求量统计
第三方集成
- Kubernetes Ingress Controller 集成
- Knative Serverless 集成
- Kafka 输出
- 服务发现:Eureka, Consul, Etcd, Nacos
高性能可用
高并发 流量处理
- 秒杀 - 选择服务,秒杀活动号,秒杀活动场次号
- 过滤 - 在设计用户定制服务时,可以定制过滤规则
- 缓存 - 为每个服务针对性定制缓存数量
负载均衡
- 轮流分配
- 随机分配
- 按权随机分配
- IP 地址哈希
- HTTP 头部信息哈希
集群管理
- 集群配置(配置名称,IP地址)
- 集群自动化选主
- 多集群配置,一键切换集群
热更新
- 程序不停机热更新
运维
CLI
- 命令行管理工具,提供配置更改、状态查询、排障支持等功能
管理API
- 对外提供RESTful API,可以进行二次开发,与用户其它系统进行集成,或者进行自动化管理和运维
调用链跟踪
- OpenTracing
- OpenZipkin
全局监控
- 节点名
- 状态(健康,故障)
- 节点角色信息 - Writer(Leader/Follower), Reader
- IP 地址
- 心跳时间
节点统计
- 流量吞吐量 (TPS/m1, m5, m15)
- 响应时间 (p50,p95,p99)
- 请求/响应数据量 (字节数)
服务监控
- 服务器吞吐量 (Server TPS/m1, m5, m15)
- 后端吞吐量 (Backend TPS)
- 服务器响应时间(p50,p95,p99)
- 后端响应时间(p50,p95,p99)
- 对服务按照各种指标进行排序
- 服务器请求/响应数据量 (字节数)
- 状态码分布
管理
配置管理
- 集群管理
- 服务及路由管理
- 插件管理
- Pipeline 管理
- Controller 管理(服务发现、监控系统、FaaS等)
用户管理
发布管理
- 蓝绿发布设定
- 灰度发布设定
- 变更预览与发布
- 发布历史查询
- 同步远程配置
可视化监控
- 接口维度吞吐量展示
- 接口维度响应时间分布式展示
- 接口维度的吞吐, 耗时,错误率等TopN排名展示
- 接口维度的状态码分布
- 接口维度请求/响应数据量统计
- Backend维度吞吐量展示
- Backend维度响应时间分布展示
- Backend维度的状态码分布
- 集群节点维度吞吐量展示
- 集群节点维度响应时间分布展示
- 集群节点维度平均请求/响应数据量分布展示
日志保全
对网关用户和服务的所有操作均保留日志,方便安全审计,证据留存,和历史记录备案查找













