雲數據庫redis版的性能測試
測試環境和命令:redis
- 阿里雲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集羣的方法比較合適
歡迎關注本站公眾號,獲取更多信息