性能测试报告
除了参考我们的性能测试报告外,你也可以访问我们公开的性能测试仓库。该仓库详细记录了所有用于测试的资源部署配置以及各个测试场景的具体配置信息。通过此仓库,你可以根据提供的指南对你自行部署的 API7 Gateway 进行性能测试。在开始测试之前,请确保你所测试的**性能基线**与我们的测试结果保持大致一致。
接下来,我们将详细阐述我们的测试场景、测试方法、测试结果以及相关配置的具体细节。
测试方法
- 环境:AWS 基础设施上的 Kubernetes 环境。
- 测试场景:
- 只启用 mocking 插件获取 API7 Gateway 的性能测试结果,该插件将按照指定的格式返回模拟数据,并且请求不会被转发到上游服务器;
- 未启用任何插件;
- 只启用 limit-count 限流限速插件;
- 只启用 key-auth 身份认证插件;
- 同时启用 key-auth 和 limit-count 插件;
- 路由和消费者:
- 单条路由和单个消费者;
- 100 条路由和 100 个消费者;
- 测试数据收集方式:每个测试用例运行 5 次,每次持续 2 分钟。统计的结果为 5 次测试结果的平均值。
性能测试结果
- AWS EKS
| 测试案例 | 路由/消费者数量 | 转发到上游 | QPS | P99 (MS) | P95 (MS) |
|---|---|---|---|---|---|
| 只启用 mocking 插件 | 1 条路由,0 个消费者 | 否 | 310,392.07 | 1.16 | 1.08 |
| 未启用任何插件 | 1 条路由,0 个消费者 | 是 | 167,019.37 | 2.30 | 2.16 |
| 未启用任何插件 | 100 条路由,0 个消费者 | 是 | 162,753.17 | 2.31 | 2.16 |
| 只启用 limit-count 限流限速插件 | 1 条路由,0 个消费者 | 是 | 145,370.10 | 2.43 | 2.24 |
| 只启用 limit-count 限流限速插件 | 100 条路由,0 个消费者 | 是 | 143,108.40 | 2.45 | 2.25 |
| 只启用 key-auth 身份认证插件 | 1 条路由,1 个消费者 | 是 | 147,869.49 | 2.41 | 2.22 |
| 只启用 key-auth 身份认证插件 | 100 条路由,100 个消费者 | 是 | 145,070.93 | 2.43 | 2.25 |
| 同时启用 key-auth 和 limit-count 插件 | 1 条路由,1 个消费者 | 是 | 136,725.47 | 2.43 | 2.26 |
| 同时启用 key-auth 和 limit-count 插件 | 100 条路由,100 个消费者 | 是 | 133,782.95 | 2.48 | 2.30 |