比如timeout为5,该值为10,那么Master与Slave之间失联50秒,Slave不会去failover它的Master
关闭,10cluster-migration-barrier
当一个Master拥有多少个好的Slave时就要割让一个Slave出来。
例如设置为2,表示当一个Master拥有2个可用的Slave时,它的一个Slave会尝试迁移
关闭,1cluster-require-full-coverage
有节点宕机导致16384个Slot全部被覆盖,整个集群是否停止服务,这个值一定要改为no
关闭,yes以上把redis.conf里面几乎所有的配置都写了一遍(除了ADVANCED CONFIG部分),感觉其他博客很少有看到比我这个还全的了^_^,给大家作为参考吧。
Redis性能测试
之前说过Redis在make之后有一个redis-benchmark,这个就是Redis提供用于做性能测试的,它可以用来模拟N个客户端同时发出M个请求。首先看一下redis-benchmark自带的一些参数:
参数 作用 默认值-h 服务器名称 127.0.0.1
-p 服务器端口 6379
-s 服务器Socket 无
-c 并行连接数 50
-n 请求书 10000
-d SET/GET值的字节大小 2
-k 1表示keep alive,0表示重连 1
-r
SET/GET/INC使用随机Key而不是常量,在形式上key样子为mykey_ran:000000012456
-r的值决定了value的最大值
无-p 使用管道请求 1,即不使用管道
-q 安静模式,只显示query/sec值 无
--csv 使用csv格式输出 无
-l 循环,无限运行测试 无
-t 只运行使用逗号分割的命令的测试 无
-I 空闲模式,只打开N个空闲线程并且等待 无
抛开配置只谈性能的都是耍流氓,说一下我买的阿里云服务器的配置:
单核CPU,CPU类型为Intel(R) Xeon(R) CPU E5-2682 v4 @ 2.50GHz
内存4G
带宽1M
操作系统为Centos7
首先我们运行最简单的redis-benchmark -q,运行结果为:
打印了每个命令的QPS,看到基本都在读写速度基本都在100000次/s以上。