千家信息网

Redis中redis-cluster需要注意哪些地方

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,本篇内容主要讲解"Redis中redis-cluster需要注意哪些地方",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Redis中redis-cluste
千家信息网最后更新 2026年10月31日Redis中redis-cluster需要注意哪些地方

本篇内容主要讲解"Redis中redis-cluster需要注意哪些地方",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Redis中redis-cluster需要注意哪些地方"吧!

1.收到150告警,rdb持久化失败

15011:M 17 Sep 08:54:43.037 # Can't save in background: fork: Cannot allocate memory15011:M 17 Sep 08:54:49.043 * 1 changes in 900 seconds. Saving...15011:M 17 Sep 08:54:49.043 # Can't save in background: fork: Cannot allocate memory

2 查看主机内存(内心os:尼玛还有这么多内存呢)

[root@ip-172-31-43-150 ~]# free -g              total        used        free      shared  buff/cache   availableMem:             29          14          10           0           4          14Swap:             0           0           0

3 查看redis-cluster集群状态,显示150已down机,心慌慌

[root@ip-172-31-39-42 ~]# /usr/local/src/redis-4.0.8/src/redis-trib.rb  check 172.31.39.42:6379[ERR] Sorry, can't connect to node 172.31.43.150:6379*** WARNING: 172.31.39.54:6379 claims to be slave of unknown node ID 6d2b67b9745a8d4bedb70d480645e3651fddaf3f.>>> Performing Cluster Check (using node 172.31.39.42:6379)M: 00f7bd511046438af2d1b41666a69ff77b6f176f 172.31.39.42:6379   slots:11258-11832,13655-16383 (3304 slots) master   1 additional replica(s)S: e771e70f580ec2799af50268865444cf425e000e 172.31.33.17:6379   slots: (0 slots) slave   replicates 00f7bd511046438af2d1b41666a69ff77b6f176fS: 8bb99c5b9585269b66684400f036fca1d30e72cb 172.31.47.157:6379   slots: (0 slots) slave   replicates 148697f75e9b4f84ad893f4d5377e96fdde7664dM: 148697f75e9b4f84ad893f4d5377e96fdde7664d 172.31.34.25:6379   slots:28,4799-5462,6375-7282,8194-9106,11833-12744 (3398 slots) master   1 additional replica(s)M: 40b766b505c54066de5b5d8eb214ea78c7df8c4b 172.31.36.10:6379   slots:7542-8193,9107-10922,12745-13654 (3378 slots) master   1 additional replica(s)S: f6a625cc2d6fb66d267b15c8d668ea150be262bc 172.31.37.68:6379   slots: (0 slots) slave   replicates 792ab7473fa447d07582817eb2f489633001d831M: 792ab7473fa447d07582817eb2f489633001d831 172.31.33.182:6379   slots:0-27,29-1145,1822-2105,3406-4798,7283-7541 (3081 slots) master   1 additional replica(s)S: 92a5541964fc3e4bfb90f1750b9105d5705beb93 172.31.39.54:6379   slots: (0 slots) slave   replicates 6d2b67b9745a8d4bedb70d480645e3651fddaf3fS: 7e5e1e341f33ebd7a3c20480b66a76bbd0922a4f 172.31.32.254:6379   slots: (0 slots) slave   replicates 40b766b505c54066de5b5d8eb214ea78c7df8c4b[OK] All nodes agree about slots configuration.>>> Check for open slots...>>> Check slots coverage...[ERR] Not all 16384 slots are covered by nodes.

登上150检查redis的状态,发现好好的!

先解决持久化失败的问题:

1.172.31.39.54:6379> config set stop-writes-on-bgsave-error no  ---解决应用端抛异常的问题OK172.31.39.54:6379> config rewriteOK172.31.39.54:6379> 2.开启内核参数,解决bgsave失败的问题[root@ip-172-31-33-182 ~]# sudo echo 'vm.overcommit_memory = 1' >> /etc/sysctl.conf[root@ip-172-31-33-182 ~]# sysctl -pvm.overcommit_memory = 1

再次查看日志,已经持久化成功,check集群也发现集群恢复正常

关于redis的内存分配学习:

Redis有自己的内存分配器,当key-value对象被移除时,Redis不会马上向操作系统释放其占用内存(例如,当用户往一个实例填充了5G的数据,移除其中2G数据,但占用内存可能仍会保持在5G左右)。为什么Redis要这样处理?有两个原因:1、OS可能会将释放内存交换到VM,但OS的VM又是物理文件,其IO读写效率较低,从而影响Redis性能表现;2、OS的VM换入换出是基于Page机制,同一Page内的部分数据对象被释放,但其他数据对象依然被其他应用使用中,导致在该Page内的Redis对象没有被释放。而Redis作者应该是考虑到以上问题,不希望Redis由此降低性能,所以在设计上Redis更倾向于自己掌控VM换入的粒度。(https://segmentfault.com/a/1190000004708270)

持久化的问题

Redis持久化磁盘IO方式及其带来的问题有Redis线上运维经验的人会发现Redis在物理内存使用比较多,但还没有超过实际物理内存总容量时就会发生不稳定甚至崩溃的问题,有人认为是基于快照方式持久化的fork系统调用造成内存占用加倍而导致的,这种观点是不准确的,因为fork 调用的copy-on-write机制是基于操作系统页这个单位的,也就是只有有写入的脏页会被复制,但是一般你的系统不会在短时间内所有的页都发生了写入而导致复制,那么是什么原因导致Redis崩溃的呢?答案是Redis的持久化使用了Buffer IO造成的,所谓Buffer IO是指Redis对持久化文件的写入和读取操作都会使用物理内存的Page Cache,而大多数数据库系统会使用Direct IO来绕过这层Page Cache并自行维护一个数据的Cache,而当Redis的持久化文件过大(尤其是快照文件),并对其进行读写时,磁盘文件中的数据都会被加载到物理内存中作为操作系统对该文件的一层Cache,而这层Cache的数据与Redis内存中管理的数据实际是重复存储的,虽然内核在物理内存紧张时会做Page Cache的剔除工作,但内核很可能认为某块Page Cache更重要,而让你的进程开始Swap ,这时你的系统就会开始出现不稳定或者崩溃了。我们的经验是当你的Redis物理内存使用超过内存总容量的3/5时就会开始比较危险了。

到此,相信大家对"Redis中redis-cluster需要注意哪些地方"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

内存 数据 物理 系统 问题 文件 对象 地方 操作系统 内核 实际 集群 学习 内容 原因 容量 快照 性能 方式 机制 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网黑科技 天津市摩尔互联网科技 互联网最新的科技 合肥互联网科技公司 杭州互联网科技公司 小马过河互联网科技 上游互联网科技 汉立互联网科技有限公司联系电话 昭通云南众福互联网科技有限公司 互联网与医疗科技 苏州铭阳互联网科技有限公司 保险科技服务互联网营销体系 山东星卡互联网科技有限公司官网 有人说阿里系是互联网科技企业 35岁以上互联网科技行业 上海同邻互联网科技有限公司规模 科技互联网公司两年变化 青岛易易互联网科技 平安好医生打造互联网科技医疗 互联网科技快速发展优美句子 互联网科技园 互联网科技公司税收优惠 智慧科技互联网 撒么互联网科技公司 武汉健翔互联网络科技有限公司 速维有品互联网信息科技(苏州)有限公司 民营互联网公司国防科技 翼展科技 首家互联网医院 21世纪互联网科技成就 浙南科技城互联网大厦招聘
0