Redis集群学习地址:http://blog.csdn.net/dc_726/article/details/11694437

  • Windows-32系统下搭建Redis集群

一.Redis主从同步原理:我们称之为Redis Replication,就是将主数据同步到从数据

1.1.>同一个Master可以将数据同步至多台Slave

1.2.>Slave同样可以接受其它Slave的链接和同步请求,这样可以有效地分载Master的同步压力

1.3.>Master Server是以非阻塞的方式为Slaves提供服务。所以在Master-Slave同步期间,客户端仍然可以提交查询或修改请求

1.4.>Slave Server同样是以非阻塞的方式完成数据同步。在同步期间,如果有客户端提交查询请求,Redis则返回同步之前的数据

1.5.>为了分载Master的读操作压力,Slave服务器可以为客户端提供只读操作的服务,写服务仍然必须由Master来完成。即便如此,系统的伸缩性还是得到了很大的提高。

1.6.>Master可以将数据保存操作交给Slaves完成,从而避免了在Master中要有独立的进程来完成此操作。

1.7.>在Slave启动并连接到Master之后,它将主动发送一个SYNC命令。此后Master将启动后台存盘进程,同时收集所有接收到的用于修改数据集的命令,在后台进程执行完毕后,Master将传送整个数据库文件到Slave,以完成一次完全同步。而Slave服务器在接收到数据库文件数据之后将其存盘并加载到内存中。此后,Master继续将所有已经收集到的修改命令,和新的修改命令依次传送给Slaves,Slave将在本次执行这些数据修改命令,从而达到最终的数据同步。

1.8.>如果Master和Slave之间的链接出现断连现象,Slave可以自动重连Master,但是在连接成功之后,一次完全同步将被自动执行。

二.主从配置:

 2.1.>Redis的主从Replication配置非常简单,假设我Redis安装包在(D:\Redis\MasterAndSlave):只需将原配置文件新拷贝一份后,做少量修改。

2.1.1.>修改端口:主配置文件redis_master.conf中配置的是默认端口:port 6379,那么修改从配置文件redis_slave1.conf的端口为port 6380

2.1.2.>指定从数据机对应的主数据机:在redis_slave1.conf配置文件中添加如下配置

# slaveof <masterip> <masterport>
slaveof 127.0.0.1 6379

2.1.3>若主数据机设置了访问密码:123456,则需要在从配置文件redis_slave1.conf中添加如下配置

# masterauth <master-password>
masterauth 123456

2.1.4.>备注:若配置多台从数据机,一次添加从数据机配置文件,修改你想要的配置模式

 三.测试验证

3.1.>启动主从数据服务器(先启动主然后启动从):Windows系统下cmd命令切换到Redis安装目录:D:\Redis\MasterAndSlave>

D:\Redis\MasterAndSlave>redis-server.exe redis_master.conf

图1.启动主数据服务器

D:\Redis\MasterAndSlave>redis-server.exe redis_slave1.conf

图2.启动从数据服务器

3.2.>启动客户端接入

 3.2.1.>连接主数据服务器:D:\Redis\MasterAndSlave>redis-cli.exe -h 127.0.0.1 -p 6379 -a 123456 (备注:-h为ip地址,-p为端口,-a为访问密码)

D:\Redis\MasterAndSlave>redis-cli.exe -h 127.0.0.1 -p 6379 -a 123456

图3.客户端查看主数据的key(redis 127.0.0.1:6379> keys *)

3.2.2>客户端连接从数据服务器:D:\Redis\MasterAndSlave>redis-cli.exe -h 127.0.0.1 -p 6379 -a 123456

图3.客户端查看从数据的key(redis 127.0.0.1:6379> keys *)

备注:客户端访问主数据机和从数据机的key显示是一样的,说明在启动从数据服务器的时候就已经将数据进行了同步。

3.2.3>在主数据服务器set master 6378,然后在从数据服务器上查看如下图

四.Redis主从和HA配置:

4.1.>

Windows下Redis集群配置的更多相关文章

  1. 最新Windows下Redis集群

    实现简单的Windows下Redis集群配置,以下是配置过程中出现的几个问题: [1]逐个启动7001 7002 7003 7004 7005 7006节点时,出现createing server T ...

  2. centos6.5下redis集群配置(多机多节点)

    可参考官网文档:redis集群配置 需要注意的是,集群中的每个节点都会涉及到两个端口,一个是用于处理客户端操作的(如下介绍到的6379/6380),另一个是10000+{监听端口},用于集群各个节点间 ...

  3. windows下redis集群安装和部署

    1.下载windows版本的Redis 官网只提供linux版本的下载 官网下载地址:http://redis.io/download github下载地址:https://github.com/MS ...

  4. Windows下Redis集群安装与部署

    1.下载 Redis-x64-3.2.100.zip 安装程序 官网下载地址:http://redis.io/download GitHub下载地址:https://github.com/micros ...

  5. Windows下Redis集群搭建

    1.第一步先安装Redis 参照<Windows下Redis安装及使用.docx> 在Redis目录E:/Redis下新建Logs文件夹,并且创建3个端口下的配置文件,记得修改里面的接口 ...

  6. linux下redis 集群配置

    redis.conf 配置文件说明 daemonize no --是否把redis-server启动在后台,默认是“否”.若改成yes pidfile /var/run/redis.pid --当Re ...

  7. Linux系统下安装Redis和Redis集群配置

    Linux系统下安装Redis和Redis集群配置 一. 下载.安装.配置环境: 1.1.>官网下载地址: https://redis.io/download (本人下载的是3.2.8版本:re ...

  8. linux环境(CentOS-6.7)下redis集群的搭建全过程

    linux环境下redis集群的搭建全过程: 使用mount命令将光盘挂载到/mnt/cdrom目录下: [root@hadoop03 ~]# mount -t iso9660 -o ro /dev/ ...

  9. CentOS下redis集群安装

    环境: 一台CentOS虚拟机上部署六个节点,创建3个master,3个slave节点 1.下载并解压 cd /root wget http://download.redis.io/releases/ ...

随机推荐

  1. Mac 下安装mysqldb 问题:一条命令解决mysql_config not found

    遇到过几次pip安装mysql-python的时候出现如题的问题,在这里记录一下解决方法. 找不到mysql_config一般是由于通过lnmp.org或者其他方式安装mysql以后mysql_con ...

  2. 403 for URL: http://www.terracotta.org/kit/reflector

    前面因为在一个项目中使用了ehcache.xml配置文件,后面启动tomcat的时候报下面的错误 java.io.IOException: Server returned HTTP response ...

  3. 解决JavaScript拖动时同时触发点击事件的BUG

    在做在线地图项目的时候,在给marker点绑定事件时,因为有点击事件click,同时又存在拖动dragEnd事件,首先没有重大缺陷,就是在用户在点击的时候,有时候本想是点击,但是他触发了drag的事件 ...

  4. Hibernate 多对多拆分 两个多对一

  5. python: local variable 'xxx' referenced before assignment

    问题发现 xxx = 23 def PrintFileName(strFileName): if xxx == 23: print strFileName xxx = 24 PrintFileName ...

  6. HDU 5695 ——Gym Class——————【贪心思想,拓扑排序】

    Gym Class Time Limit: 6000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total S ...

  7. DataTables添加额外的查询参数和删除columns等无用参数

    //1.定义全局变量 var iStart = 0, searchParams={}; //2.配置datatable的ajax配置项 "ajax": { "url&qu ...

  8. SQL常用函数总结

    SQL常用函数总结 这是我在项目开发中使用db2数据库写存储过程的时候经常用到的sql函数.希望对大家有所帮助: sql cast函数 (1).CAST()函数的参数是一个表达式,它包括用AS关键字分 ...

  9. unity3d之技能栏冷却

    绑定在按钮上的脚本 using UnityEngine; using System.Collections; using UnityEngine.UI; public class CdCover : ...

  10. mysql通过一张表更新另一张表

    在mysql中,通过一张表的列修改另一张关联表中的内容: 1:  修改1列 update student s, city c set s.city_name = c.name where s.city ...