云数据库redis版的性能测试

牧云@^-^@ 提交于 2019-12-06 12:26:53

测试环境和命令:

  • 阿里云VPC环境, 4 x (1核, 2G ECS) 用于运行codis proxy
  • codis proxy后端slot均衡的接2个或4个阿里云redis实例
  • 内网SLB连接4个codis proxy
  • 只单纯测试单条读写, 命令如下:
  • ./redis-benchmark -a <auth-passwd> -h <slb-addr> -c 64 -n 500000 -P 100 -r 1048576 -d 256 -t get,set

测试结果:

Spec. ValueSize(byte) ops(SET) ops(GET)
直连1G redis 256 6.5w 4w
codis接2x1G redis 256 12w 8w
codis接4x1G redis 256 26w 16w
codis接4x1G redis 1024 8w 4w
codis接4x1G redis 2048 4w 2w
codis接2x2G redis 256 15w 12w
直连8G redis 1024 9w 80w
直连8G redis 2048 4.7w 80w

测试结论:

  • aliyun的低配redis服务器(1G, 2G), 写入性能明显优于读取性能, 猜测读性能应该是aliyun做的流量限制
  • aliyun的8G redis比较特殊, 读性能大大提升(80w), 并且无视value长度变大?! 很怀疑是不是redis-benchmark出错了
  • codis的读写性能随后端节点数量是线性的, 等同于单个后端redis节点性能 * 节点数目
  • codis后端4 x 1G的性能优于 2 x 2G, 写性能略低于(基本持平)直连8G redis, 读性能则远远低于。
  • codis需要额外ecs计算资源部署codis proxy, 不过对于扩展性和写入性能要求较高的场景, 使用codis集群的方法比较合适
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!