redis 学习笔记(3)-master/slave(主/从模式)
2014-11-19 09:52
148 查看
类似mysql的master-slave模式一样,redis的master-slave可以提升系统的可用性,master节点写入cache后,会自动同步到slave上。
环境:
master node: 10.6.144.155:7030
slave node: 10.6.144.156:7031
一、配置
仅需要在slave node上修改配置:
找到slaveof这行,参考下面的修改(填上master node的Ip和端口就完事了)
slaveof 10.6.144.155 7030
另外注意下 slave-read-only yes 这行,这表示slave只读不写,也是推荐设置
二、验证
启动master/slave这二台机器上的redis,在master上加一个缓存项
View Code
后记:个人感觉master-slave模式作用有限,因为从二种client的测试结果看,在没有其它监控机制的前提下,无论是master或slave挂掉,都需要手动调整配置或修改代码,才能保证读/写继续正常工作,理想情况是master挂掉,最好slave中能自动(无需人工干预)选出一台充当master继续服务。redis 的cluster功能,目前尚处于beta阶段,估计不久的将来,等cluster功能正式发布后,可以通过custer功能搭建redis集群。
环境:
master node: 10.6.144.155:7030
slave node: 10.6.144.156:7031
一、配置
仅需要在slave node上修改配置:
找到slaveof这行,参考下面的修改(填上master node的Ip和端口就完事了)
slaveof 10.6.144.155 7030
另外注意下 slave-read-only yes 这行,这表示slave只读不写,也是推荐设置
二、验证
启动master/slave这二台机器上的redis,在master上加一个缓存项
@Test public void testJedis() throws InterruptedException { Jedis jedisMaster = new Jedis("10.6.144.155", 7030); String key = "a"; String a= jedisMaster.get(key); if (a!=null){ jedisMaster.del(key); } jedisMaster.set(key, "hi!");//向master写入 jedisMaster.close(); Jedis jedisSlave = new Jedis("10.6.144.156", 7031);// 连接slave jedisSlave.slaveof("10.6.144.155", 7030);// 指定master System.out.println(jedisSlave.get(key)); jedisSlave.slaveofNoOne();//master如果down挂,可以用代码将slave提升为master(即:可写) jedisSlave.set(key, "new"); System.out.println(jedisSlave.get(key)); jedisSlave.close(); }
View Code
后记:个人感觉master-slave模式作用有限,因为从二种client的测试结果看,在没有其它监控机制的前提下,无论是master或slave挂掉,都需要手动调整配置或修改代码,才能保证读/写继续正常工作,理想情况是master挂掉,最好slave中能自动(无需人工干预)选出一台充当master继续服务。redis 的cluster功能,目前尚处于beta阶段,估计不久的将来,等cluster功能正式发布后,可以通过custer功能搭建redis集群。
相关文章推荐
- redis 学习笔记(3)-master/slave(主/从模式)
- redis 学习笔记(3)-master/slave(主/从模式)
- redis 学习笔记(3)-master/slave(主/从模式)
- 【学习笔记】Redis主从(Master,Slave)
- Redis源码学习-Master&Slave的命令交互
- redis配置master-slave模式
- redis -master/slave(主/从模式)
- 【Redis】Redis学习(二) master/slave、sentinel、Cluster简单总结
- Redis 学习笔记十 发布者订阅者模式与生产者消费者模式
- redis-master/slave模式
- Jenkins学习笔记(四) master/slave的初步认识
- 学习MongoDB(四)——Master/Slave模式
- mongo学习笔记三:Mongodb的三种集群(Master-Slave)
- redis -master/slave(主/从模式)
- Jenkins学习笔记(三) master/slave的初步认识
- Redis的主从模式-Redis学习笔记五
- noSQL-redis学习(六) -- redis主从复制(Master/Slave)
- redis master-slave模式
- MySQL学习笔记--复制建立新Slave的方法:克隆Master\Slave
- Redis采用sentinel哨兵模式进行master-slave复制,read-write分离