# 基准测试结果
我们将FizzGate与市面上主要的网关产品进行比较,使用相同的环境和条件,测试对象均为单个节点。Mock接口模拟20ms时延,报文大小约2K。
分类 | 产品 | 600并发 QPS | 600并发 90% Latency(ms) | 1000并发 QPS | 1000并发 90% Latency(ms) |
---|---|---|---|---|---|
后端服务 | 直接访问后端服务 | 23540 | 32.19 | 27325 | 52.09 |
流量网关 | kong v2.4.1 | 15662 | 50.87 | 17152 | 84.3 |
应用网关 | fizz-gateway-community v2.0.0 | 12206 | 65.76 | 12766 | 100.34 |
应用网关 | spring-cloud-gateway v2.2.9 | 11323 | 68.57 | 10472 | 127.59 |
应用网关 | shenyu v2.3.0 | 9284 | 92.98 | 9939 | 148.61 |
# 基准测试详情
# 硬件环境
后端Mock服务所在服务器:
- 4核8G内存 Intel(R) Xeon(R) CPU E5-2650 v3 @ 2.30GHz * 4
- 操作系统 CentOS Linux release 7.6.1810 (Core)
- 内核版本 Linux version 3.10.0-957.21.3.el7.x86_64
网关节点所在服务器:
- 4核8G内存 Intel(R) Xeon(R) CPU E5-2650 v3 @ 2.30GHz * 4
- 操作系统 CentOS Linux release 7.6.1810 (Core)
- 内核版本 Linux version 3.10.0-957.21.3.el7.x86_64
压测工具占用资源很少,安装在网关节点服务器。
# 压测工具
压测软件:wrk
并发连接: 600, 1000
# 测试用例说明
- 使用Mock服务模拟一个耗时20ms, 响应报文约2k的接口
- 所有被测试的网关的日志级别均为WARN
- 所有被测试的网关不开启额外的插件(如:鉴权,流控等)
- JVM最大堆内存4G
- 每次压测时长5分钟
# 压测结果截图
- 直接访问后端服务:
- Kong:
- fizz-gateway-communnity:
- spring-cloud-gateway:
- shenyu:
← 运维相关 benchmark v1 →