`
flychao88
  • 浏览: 743540 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Twemproxy测试用例以及压测结果

 
阅读更多

1、前端使用 Twemproxy 做代理,后端的 Redis 数据能基本上根据 key 来进行比较均衡的分布。

后端一台 Redis 挂掉后,Twemproxy 能够自动摘除。恢复后,Twemproxy 能够自动识别、恢复并重新加入到 Redis 组中重新使用。

 

2、Redis 挂掉后,后端数据是否丢失依据 Redis 本身的策略配置,与 Twemproxy 基本无关。

如果要新增加一台 Redis,Twemproxy 需要重启才能生效;并且数据不会自动重新 Reblance,需要人工单独写脚本来实现。

 

3、如同时部署多个 Twemproxy,配置文件一致(测试配置为distribution:ketama,modula),则可以从任意一个读取,都可以正确读取 key对应的值。

 

4、多台 Twemproxy 配置一样,客户端分别连接多台 Twemproxy可以在一定条件下提高性能。根据 Server 数量,提高比例在 110-150%之间。

 

5、如原来已经有 2 个节点 Redis,后续有增加 2 个 Redis,则数据分布计算与原来的 Redis 分布无关,现有数据如果需要分布均匀的话,需要人工单独处理。

 

6、如果 Twemproxy 的后端节点数量发生变化,Twemproxy 相同算法的前提下,原来的数据必须重新处理分布,否则会存在找不到key值的情况。

 

测试方式:

1.后端 Redis 节点数量不变,不同 Twemproxy server 测试及多个同时运行测试结果如下:

twemproxy server运行数量(port) 1(A server) 1(B Server) 2 4 6
测试结果(/s) 30278.26 32867.71 35143.28 40176.777 52345.5152

从上面数据可以看出,单台最多也只能达到单个 Redis 的性能;2个节点运行性能增加大概110%左右。4个 server 运行,性能大概增加了123%,6个 server 接入运行160%。

2.前端使用1个 Twemproxy server,后端 Redis 数量分别为2,3,4,5,6来进行压力测试,看测试结果,测试数据如下:

redis节点数 2 3 4 5 6
测试结果(/s) 34882.1 34749.97 32296.61 32438.04 32867.71

从数据可以看出,后端节点数量与 Twemproxy 的性能基本无关,最大性能也就是单个 Redis 的性能。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics