如果我们redis的压力很大,如果我们的并发高到我们读数据和写数据都有了很大压力。 那么我们可能就需要把redis分开部署,并且配置为一个『主从』的状态。

在服务器上构筑Redis的集群配置:

1.切换root用户

  su - centos
  输入密码 ******
  sudo su
  输入密码 ******

2.安装前提包

  yum install gcc-c++
  yum install -y ruby
  yum install -y rubygems

3.下载redis4.0.7

  wget http://download.redis.io/releases/redis-4.0.7.tar.gz

4.移动redis至/usr/local/

  mv redis-4.0.7.tar.gz /usr/local/

  cd /usr/local/

5.解压redis安装包

  tar zxf redis-4.0.7.tar.gz

6.映射redis快捷文件夹

  ln -s /usr/local/redis-4.0.7 /usr/local/redis

  cd /usr/local/redis

7.编译

  make

8.映射redis bin快捷文件夹

  ln -s /usr/local/redis/src /usr/local/redis/bin

9.备份配置文件

  mkdir /usr/local/redis/conf_bak

  cp -rp /usr/local/redis/*.conf /usr/local/redis/conf_bak/

10.修改配置文件redis.conf

  vi /usr/local/redis/redis.conf

修改配置如下:
  protected-mode yes
##绑定的主机地址
##bind <本机ip>
  bind 10.76.64.16
##Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程
  daemonize yes
##设置当本机为slav服务时,设置master服务的IP地址及端口,在Redis启动时,它会自动从master进行数据同步
#slaveof <masterip> <masterport>
  slaveof 10.76.64.16 6379 (为主服务器的 ip端口号)
##当master服务设置了密码保护时,slav服务连接master的密码
#masterauth <master-password>
  masterauth redis2ac
##设置Redis连接密码,如果配置了连接密码,客户端在连接Redis时需要通过AUTH <password>命令提供密码,默认关闭
#requirepass <master-password>
  requirepass redis2ac

11.修改哨兵配置

  vi /usr/local/redis/sentinel.conf

修改配置如下:

##bind <本机ip>
  bind 10.76.64.16
##Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程
  daemonize yes
##sentinel monitor mymaster <主机master ip> <主机master port> 1
  sentinel monitor mymaster 10.76.64.16 6379 1(为主服务器的 ip端口号)
##sentinel auth-pass mymaster <主机master redis密码>
  sentinel auth-pass mymaster redis2ac

12.redis服务启动

  /usr/local/redis/bin/redis-server /usr/local/redis/redis.conf

13.reids哨兵进程启动

  /usr/local/redis/bin/redis-sentinel /usr/local/redis/sentinel.conf

redis主从复制过程:

当配置好slave后,slave与master建立连接,然后发送sync命令。无论是第一次连接还是重新连接,master都会启动一个后台进程,将 数据库快照保存到文件中,同时master主进程会开始收集新的写命令并缓存。后台进程完成写文件后,master就发送文件给slave,slave将 文件保存到硬盘上,再加载到内存中,接着master就会把缓存的命令转发给slave,后续master将收到的写命令发送给slave。

如果master同时收到多个slave发来的同步连接命令,master只会启动一个进程来写数据库镜像,然后发送给所有的slave。master同步数据时是非阻塞式的,可以接收用户的读写请求。然而在slave端是阻塞模式的,slave在同步master数据时,并不能够响应客户端的查询。

可以在master禁用数据持久化,只需要注释掉master 配置文件中的所有save配置,然后只在slave上配置数据持久化

拥有主从服务器的好处(从服务器是只读的,可以一主多从)

1.    主服务器进行读写时,会转移到从读,减轻服务器压力

2.    热备份 主从都可以设置密码,也可以密码不一致

  

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

  1. redis:集群配置

    一.redis集群相关 1.概念:redis集群是通过数据分区提供可用性的,这样即使一部分节点失效也可以继续处理请求. 2.原理:集群使用数据分片实现,一个redis集群包括16384个哈希槽,数据库 ...

  2. Redis简单集群配置

    参考链接为:http://blog.csdn.net/u014230881/article/details/71123494 比较系统学习和熟练使用Redis命令可参考该教程:http://www.r ...

  3. Centos6 安装 Redis 和集群配置

    Redis安装 先确认gcc和tcl已经安装 sudo yum install gcc-c++ sudo yum install tcl 解压, 编译和安装 .tar.gz /usr/src/ cd ...

  4. Redis Sentinel集群配置中的一些细节

    今天在配置Redis集群,用作Tomcat集群的缓存共享.关于Redis集群的配置网上有很多文章,这里只是记录一下我在配置过程中遇到的一些小的细节问题. 1. 关于Protected Mode的问题 ...

  5. redis sentinel 集群配置-主从切换

    1.配置redis master,redis slave(配置具体操作见上文http://www.cnblogs.com/wangchaozhi/p/5140469.html). redis mast ...

  6. redis哨兵集群配置

    redis 集群架构图: 需要先配置redis主从,我这边是单机部署的. 采用一主一从,两个sentinel. redis host: 172.31.11.235 redis-master port: ...

  7. Redis redis-trib集群配置

    redis文档:http://doc.redisfans.com/ 参考:https://www.cnblogs.com/wuxl360/p/5920330.html http://www.cnblo ...

  8. redis之 集群配置(主从复制)

    集群的作用: 集群的方式有二种: 第二种的好处是:master宕机以后可以直接切换到slave1 主从通信的过程 先通过dump导出大块的rdb 然后把aof缓冲过来,然后通过replicationf ...

  9. Redis cluster集群配置教程

    这里建议大家安装4.0.9版本的 1.打开Centos虚拟机,登陆. 2.通过WinSCP把Redis集群tar包上传到虚拟机里的目录里,我的目录是 /usr/local 这里我已经上传过了并解压了, ...

随机推荐

  1. 【Netty源码解析】NioEventLoop

    上一篇博客[Netty源码学习]EventLoopGroup中我们介绍了EventLoopGroup,实际说来EventLoopGroup是EventLoop的一个集合,EventLoop是一个单线程 ...

  2. Java中导出到Excel实现_aspose.cells

    参考http://183615215-qq-com.iteye.com/blog/1858208 包下载:http://pan.baidu.com/s/1o6ju0ZK,将lib的jar包导入到工程中 ...

  3. 【Unity技巧】四元数(Quaternion)和旋转

    四元数介绍 旋转,应该是三种坐标变换--缩放.旋转和平移,中最复杂的一种了.大家应该都听过,有一种旋转的表示方法叫四元数.按照我们的习惯,我们更加熟悉的是另外两种旋转的表示方法--矩阵旋转和欧拉旋转. ...

  4. 同步图计算:GraphLite的安装和使用

    http://blog.csdn.net/pipisorry/article/details/51350908 export HADOOP_HOME=/usr/local/hadoop-2.6.4ex ...

  5. Android 9Patch图片的使用-android学习之旅(十八)

    9patch的使用方法 9patch图片常被用来做消息发送等的图片,只是缩放照片的部分区域,使得图片的整体形状不会受到影响,比较方便. 下面我们介绍一下: 在android的SDK安装目录下的tool ...

  6. iOS中 Realm错误总结整理 韩俊强的博客

    每日更新关注:http://weibo.com/hanjunqiang  新浪微博! 一.错误信息:Attempting to modify object outside of a write tra ...

  7. blob2clob/clob2blob研究

    一.两种方法实现  blob到clob的转换 CREATE OR REPLACE FUNCTION blob2clob(v_blob_in IN BLOB) RETURN CLOB IS v_fi ...

  8. dbms_lob使用之-基础

     在Oracle中,存储在LOB中数据称为LOB的值,如使用Select   对某一LOB字段进行选择,则返回的不是LOB的值,而是该LOB字段的定位器(可以理解为指向LOB值的指针).如执行如下 ...

  9. 03一些View总结

    第三天 一  TextView    父类 : View     >概念:文本控件 :文本内容的显示   默认配置不可编辑  子类EditText可以编辑          >属性:    ...

  10. Struts2进阶(一)运行原理及搭建步骤

    Struts2进阶(一)运行原理 Struts2框架 Struts2框架搭建步骤 致力于web服务,不可避免的涉及到编程实现部分功能.考虑使用到SSH框架中的Struts2.本篇文章只为深入理解Str ...