我想用雅虎的ycsb测试2个redis节点。因为我不能在集群模式下运行这些节点(redis至少有6个节点才能在集群模式下运行),所以我使用 slaveof no one
对于主节点和 slaveof <host> <port>
对于从属节点。但是当我尝试将ycsb的密钥加载到redis时,在ycsb命令中cluster.mode=true,我得到了一个错误,因为ycsb读取redis master的配置文件,发现cluster模式被禁用了。注意,为了运行slaveof命令,我们不能处于集群模式。有人知道解决方法吗?
1条答案
按热度按时间2mbi3lxu1#
在我的理解中,您想要测试redis可伸缩性的性能。因此,您需要将cluster标志设置为true。
不幸的是,目前yscb的redis实现不支持redis的主从模式(ycsb使用jedis2.9.0作为redis连接客户端)。
如果您还想测试redis可伸缩性的性能,有两种选择。
第一个是将jedis版本升级到3.x或更高版本,然后重写ycsb的redisclient.java(https://github.com/brianfrankcooper/ycsb/blob/master/redis/src/main/java/site/ycsb/db/redisclient.java)对于您自己的测试场景。
第二种是将redis的集群模式和主从模式分开。redis集群至少需要6个节点。但是,你可以减少3个节点。只需设置6个节点,然后关闭从属节点。不建议用于生产,但足以用于测试。
你可以测试它3,6,9。。。节点。
希望对你有帮助。