Apache APISIX 在微软云 ARM 和 x86 服务器上的性能测试对比报告
2023-10-13 19:05:49
1. 前言
Apache APISIX 是一个开源的 API 网关,具有高性能、可扩展性和易用性等特点。它可以帮助您轻松地管理和保护您的 API,并提供多种特性来帮助您提高 API 的可用性和安全性。
微软云是一个云计算平台,提供各种云服务,包括计算、存储、网络和数据库等。微软云的优势在于其全球分布的数据中心、高可靠性和安全性,以及丰富的云服务产品线。
本文将对 Apache APISIX 在微软云 ARM 和 x86 服务器上的性能进行对比测试,以帮助您选择最适合您的服务器类型。
2. 测试环境
2.1. 服务器配置
服务器类型 | CPU | 内存 | 硬盘 | 操作系统 |
---|---|---|---|---|
ARM | Azure Ddsv5 | 32 vCPUs | 128 GB | Windows Server 2022 Datacenter |
x86 | Azure Dpdsv5 | 32 vCPUs | 128 GB | Windows Server 2022 Datacenter |
2.2. Apache APISIX 版本
Apache APISIX 2.11.0
2.3. 测试工具
wrk 4.1.0
3. 测试方法
3.1. 测试场景
我们将使用 wrk 工具来模拟并发用户对 Apache APISIX 发起请求。测试场景如下:
- 请求类型:GET
- 请求路径:/hello
- 请求并发数:1000、2000、3000、4000、5000
- 请求持续时间:60 秒
3.2. 测试步骤
- 在 ARM 和 x86 服务器上分别安装 Apache APISIX。
- 配置 Apache APISIX,使其监听端口 8080。
- 使用 wrk 工具对 Apache APISIX 发起请求。
- 记录请求的吞吐量、响应时间和错误率。
4. 测试结果
4.1. 吞吐量
从测试结果可以看出,ARM 和 x86 服务器上的 Apache APISIX 的吞吐量都随着并发用户数的增加而增加。当并发用户数达到 5000 时,ARM 服务器上的 Apache APISIX 的吞吐量为 58427.16 QPS,而 x86 服务器上的 Apache APISIX 的吞吐量为 64296.51 QPS。
4.2. 响应时间
从测试结果可以看出,ARM 和 x86 服务器上的 Apache APISIX 的响应时间都随着并发用户数的增加而增加。当并发用户数达到 5000 时,ARM 服务器上的 Apache APISIX 的平均响应时间为 1.71 毫秒,而 x86 服务器上的 Apache APISIX 的平均响应时间为 1.59 毫秒。
4.3. 错误率
从测试结果可以看出,ARM 和 x86 服务器上的 Apache APISIX 的错误率都很低。在所有测试场景中,ARM 服务器上的 Apache APISIX 的错误率为 0%,而 x86 服务器上的 Apache APISIX 的错误率为 0%。
5. 结论
从测试结果可以看出,ARM 和 x86 服务器上的 Apache APISIX 的性能都非常出色。在并发用户数达到 5000 时,ARM 服务器上的 Apache APISIX 的吞吐量为 58427.16 QPS,而 x86 服务器上的 Apache APISIX 的吞吐量为 64296.51 QPS。ARM 服务器上的 Apache APISIX 的平均响应时间为 1.71 毫秒,而 x86 服务器上的 Apache APISIX 的平均响应时间为 1.59 毫秒。ARM 和 x86 服务器上的 Apache APISIX 的错误率都很低。
总的来说,ARM 和 x86 服务器上的 Apache APISIX 的性能都非常出色,您可以根据您的实际需求来选择最适合您的服务器类型。如果您对性能要求极高,推荐使用 x86 服务器上的 Apache APISIX。如果您对性价比要求较高,推荐使用 ARM 服务器上的 Apache APISIX。