redis的快照和集群部署

2023-05-16

1、安装
使用redis-3.2.8.tar.gz
tar -zxvf redis-3.2.8.tar.gz
cd redis-3.2.8
make && make test && make install

(1)redis utils目录下,有个redis_init_script脚本
(2)将redis_init_script脚本拷贝到linux的/etc/init.d目录中,将redis_init_script重命名为redis_6379,6379是我们希望这个redis实例监听的端口号
(3)修改redis_6379脚本的第6行的REDISPORT,设置为相同的端口号(默认就是6379)
(4)创建两个目录:/etc/redis(存放redis的配置文件),/var/redis/6379(存放redis的持久化文件)
(5)修改redis配置文件(默认在根目录下,redis.conf),拷贝到/etc/redis目录中,修改名称为6379.conf

(6)修改redis.conf中的部分配置为生产环境

daemonize yes 让redis以daemon进程运行
pidfile /var/run/redis_6379.pid 设置redis的pid文件位置
port 6379 设置redis的监听端口号
dir /var/redis/6379 设置持久化文件的存储位置

(7)让redis跟随系统启动自动启动

在redis_6379脚本中,最上面,加入两行注释

#chkconfig: 2345 90 10

#description: Redis is a persistent key-value database

chkconfig redis_6379 on

在slave node上配置:slaveof 192.168.1.1(主机ip) 6379(主机端口),即可

也可以使用slaveof命令
(8)rdb和aof的配置
rdb
save 900 1 #每隔900秒,有一条更新就存入dump.rdb
save 300 10#每隔300秒,有10条更新就存入dump.rdb
save 60 10000#每隔60秒,有10000条更新就存入dump.rdb
aof
appendonly yes#把no修改为yes,默认是no
# appendfsync always———————–每次有更新就存入
appendfsync everysec———————–每隔一秒存入,一般使用这个
# appendfsync no—————————-不主动存入,完全依赖操作系统的机制
下面是两个条件满足,就重新写入一个新的aof文件
auto-aof-rewrite-percentage 100—————————达到上次文件的100%,比如上次是100M,达到200M就满足
auto-aof-rewrite-min-size 64mb—————————-如果达到上次的1倍,比如上次30M,这次60M,不满足
2、强制读写分离

基于主从复制架构,实现读写分离

redis slave node只读,默认开启,slave-read-only

开启了只读的redis slave node,会拒绝所有的写操作,这样可以强制搭建成读写分离的架构

3、集群安全认证

master上启用安全认证,requirepass
master连接口令,masterauth
设置
requirepass XXXXXX

slave上设置
masterauth XXXXXX

4、读写分离架构的测试

在搭建生产环境的集群的时候,不要忘记修改一个配置,bind
在配置文件6379.conf中修改bind 127.0.0.1为自己的真实ip
bind 127.0.0.1 -> 本地的开发调试的模式,就只能127.0.0.1本地才能访问到6379的端口

每个redis.conf中的bind 127.0.0.1 -> bind自己的ip地址
在每个节点上都: iptables -A INPUT -ptcp –dport 6379 -j ACCEPT

先启动主节点
再启动从节点

redis-cli -h ipaddr
info replication

在主上写,在从上读
补充:
对redis读写分离架构进行压测,单实例写QPS+单实例读QPS

redis-3.2.8/src

./redis-benchmark -h 192.168.1.107

-c Number of parallel connections (default 50)
-n Total number of requests (default 100000)
-d Data size of SET/GET value in bytes (default 2)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

redis的快照和集群部署 的相关文章

随机推荐

  • 手把手教你用Hexo+(Coding/GitHub)搭建个人博客及绑定私有域名

    Hexo是一个开源的静态博客框架 xff0c 支持markdown文档 xff0c 应用起来很方便而且有丰富的主题模板可供选择 xff0c 是建立个性化的个人博客的不二之选 以下以Coding 43 hexo为例搭建个人博客 因为GitHu
  • python 读写文件 删除文件

    概述 xff1a 主要内容 python read write 删除文件写 xff1b 在 39 w 39 和 39 a 39 模式下 xff0c 如果你打开的文件不存在 xff0c 那么open 函数会自动帮你创建一个 1 写入和读取文件
  • 看完微信抢红包算法你就明白,为啥你不是手气最佳

    摘要 xff1a 今天我们就来分析一下抢红包的算法 xff0c 其中有一些是微信红包的算法 xff0c 看完你就知道手气最佳是如何产生的啦 本文分享自华为云社区 为啥春节抢红包总不是手气最佳 xff1f 看完微信抢红包算法你就明白了 xff
  • python读音播报-基于python GUI开发的点名小程序(语音播报)

    实现名单轮播 点名 语音播报功能 coding utf8 ProjectName python3 FileName name Author shuxiaying Date 2020 7 9 Description import dateti
  • python编程100个小程序-整理了适合新手的20个Python练手小程序

    即刻关注公众号 xff0c 发现世界的美好 100个Python练手小程序 xff0c 学习python的很好的资料 xff0c 覆盖了python中的每一部分 xff0c 可以边学习边练习 xff0c 更容易掌握python 程序1 题目
  • python编程入门书籍-最适合Python初学者的6本书籍推荐「必须收藏」

    原标题 xff1a 最适合Python初学者的6本书籍推荐 必须收藏 Python是一种通用的解释型编程 xff0c 主要用于Web开发 机器学习和复杂数据分析 Python对初学者来说是一种完美的语言 xff0c 因为它易于学习和理解 x
  • dubbo好书推荐

    为了自己的进步 xff0c 也为了能够帮助其他人 xff0c 我决定开始写一些东西 xff0c 网上有很多学习资料 xff0c 自己的功力未必到家 xff0c 所以大家共同进步吧 xff01 站在巨人的肩膀上看得远 xff0c 现在推荐一本
  • linux升级java的jdk版本

    这里以升级jdk 8u231 linux x64 rpm为示例 安装 xff0c rpm ivh jdk 8u161 linux x64 rpmrpm pql root jdk 8u161 linux x64 rpm 通过查看 jdk 的信
  • you-get简明使用教程

    前言 近期 xff0c 想要下载哔哩哔哩等网站的视频 xff0c 网上查了一下you get的使用教程和视频 xff0c 有些特别简单 xff0c 说的不求甚解 xff0c 有些讲的太过繁琐 xff0c 所以 xff0c 打算自己写一个简单
  • linux分区扩容(非lvm)

    前言 最近 xff0c 在使用linux中中 xff0c 对于分区空间不够使用的情况下 xff0c 如果是使用lvm的分区 xff0c 是可以使用lvm扩容的 xff0c 流程大概是 xff1a 新加磁盘 将新加的磁盘创建成pv 将新加的p
  • linux关闭virbr0网卡

    前言 最近 xff0c 在使用linux时 要求需要关闭virbr0的网卡 xff0c 网上查了一下virbr0是kvm虚拟机使用的网卡 xff0c 是libvirtd服务安装后 xff0c 自动生成的 xff0c virbr0的配置文件位
  • rsync定时备份数据

    前言 rsync定时备份数据 简介 使用非系统用户备份数据192 168 130 63的 var www html 目录到192 168 130 64的 web bak目录 rsync定时备份数据 实验环境 xff1a 服务器 xff1a
  • rsync+sersync实时同步数据

    前言 rsync 43 sersync实时同步数据 简介 rsync 43 sersync实时同步数据的原理是在客户端安装sersync监控目录的变化 xff0c 一般是增删改 xff0c 检测到变化以后 xff0c 将变化的文件同步到服务
  • 配置 NFS 服务简述

    前言 配置 NFS 服务简述 简介 nfs utils服务依赖于rpcbind的服务 xff0c 是将服务端的目录共享 xff0c 其实是共享的 整个服务端的空间 xff0c 在客户端将共享目录挂载使用即可 配置 NFS 服务简述 实验环境
  • javaweb中四大域对象的生命周期与常用方法

    一 ServletContext 1 生命周期 xff1a 当Web应用被加载进容器时创建代表整个web应用的ServletContext对象 xff0c 当服务器关闭或Web应用被移除时 xff0c ServletContext对象跟着销
  • spring boot 集成 Guava Cache

    Guava Cache 背景集成缓存存放缓存回收 xff1a 基于容量回收 xff08 Size based Eviction xff09 基于时间回收 xff08 Timed Eviction xff09 基于引用类型的回收 xff08
  • 求1~n的阶乘的和,例:1!+2!+3!+......n!

    目录 递归实现 思想 代码实现 非递归实现 思想 代码实现 递归实现 xff1a 利用递归的形式实现阶乘的求和功能 xff0c 但是要注意栈溢出 xff0c 每次递归都会调用 xff0c 都会压栈 xff0c 占用栈中内存 xff0c 如果
  • 如何给shell脚本传入参数小结

    大家都知道普通的bash命令后边可以跟任意的参数 xff0c 那我们自己编写的脚本是否也支持传递参数呢 xff1f 答案当然是肯定的 执行 vim test sh 创建一个新的shell脚本 脚本test sh的内容如下 xff1a bin
  • 使用calibre制作带目录的mobi电子书

    1 把word等格式的书籍转换成txt格式的文件 xff0c 另外再重新把txt文件打开 xff0c 另存为UTF 8格式的文件 2 在想设为目录条目的地方输入 符号 xff0c 一级目录输入一个 xff0c 二级目录输入 3 在每段开头处
  • redis的快照和集群部署

    1 安装 使用redis 3 2 8 tar gz tar zxvf redis 3 2 8 tar gz cd redis 3 2 8 make amp amp make test amp amp make install xff08 1