性能测试

  1. 在编写自己的性能测试之前,请先使用 redis-benchmark.exe 检查缓存的一般吞吐量和延迟特征。 有关详细信息,请参阅 Redis 基准

  2. 用于测试的客户端 VM 应与 Redis 缓存实例位于同一区域

  3. 确保所用客户端 VM 至少与正在测试的缓存拥有相同的计算和带宽容量。

  4. 请勿仅在稳定状态条件下对缓存进行性能测试。 还需要按照故障转移条件进行测试,并在测试期间测量缓存中的 CPU/服务器负载。 可以通过重新启动主节点来启动故障转移。 通过在故障转移条件下进行测试,可了解应用程序在故障转移条件下的吞吐量和延迟情况。 故障转移可能在更新期间或计划外事件期间发生。 理想情况下,即使是在故障转移期间,CPU/服务器负载峰值也应该不会很高(例如超过 80%),因为这可能会影响性能。

  5. 请考虑使用高级层 Azure Cache for Redis 实例。 这些缓存大小具有更好的网络延迟和吞吐量,因为它们是在 CPU 和网络两方面都更好的硬件上运行的。

    注意

    此处发布了我们观测到的性能结果供你参考。 另请注意,SSL/TLS 会增大一些开销,因此,如果你使用传输加密,延迟和/或吞吐量可能会有变化。

Redis 基准实用工具

你可在此处找到 Redis 基准文档。

redis-benchmark.exe 不支持 TLS。 运行测试前,必须通过门户启用非 TLS 端口。 可在此处找到 redis-benchmark.exe 的 Windows 兼容版本。

Redis 基准示例

测试前的设置:准备好缓存实例以及测试延迟和吞吐量所需的数据:

redis-benchmark -h yourcache.redis.cache.chinacloudapi.cn -a yourAccesskey -t SET -n 10 -d 1024

测试延迟:使用 1k 有效负载测试 GET 请求:

redis-benchmark -h yourcache.redis.cache.chinacloudapi.cn -a yourAccesskey -t GET -d 1024 -P 50 -c 4

测试吞吐量:使用 1k 有效负载测试管道 GET 请求:

redis-benchmark -h yourcache.redis.cache.chinacloudapi.cn -a yourAccesskey -t  GET -n 1000000 -d 1024 -P 50  -c 50

后续步骤