百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

Redis配置之主从配置(redis主从配置文件)

mhr18 2024-10-25 12:40 31 浏览 0 评论

简介

redis 主从模式复制,可以保证数据的安全性。

有些人认为 master-slave 暗指“奴隶制度”,因此建议修改掉,这个看似简单的修改实际上要付出昂贵的代价。

在redis5的时候,将 master-slave 架构的描述改为 master-replica,并且兼容之前的slave命令。

只是为 SLAVEOF 提供别名 REPLICAOF,所以仍然可以使用 SLAVEOF,但多了一个选项。


复制

1、redis复制是异步的,但是也指定几个从节点接受到复制后,才表示写成功。

2、如果网络出现抖动或者延迟,相对时间比较断,Redis副本可以与主节点进行增量同步即可。这个可以通过配置的缓存大小来控制。

3、复制过程是自动的,不需要手动干预,如果是网络断开了,Redis副本会自动重新尝试连接主节点,进行增量或者全量同步。

master-replica 配置

replicaof 192.168.122.100 7000

密码验证

如果主节点设置了密码验证,从节点同步的时候就需要设置masterauth这个参数进行同步验证。

masterauth cjwdVD6B2NXSDShBWWzD3sdPjISbOBrw

同步断开,副本继续回复请求

当副本节点与主节点断开,当从节点服务还可以用的时候,有两种不同的操作方式:

1、当replica-serve-stale-data 设置成yes(默认选项),副本将继续回复客户端的请求,只是这时候的数据跟主节点可能不一致;如果是第一次同步就会出现空数据的情况。

2、如果replica-serve-stale-data 设置成no,副本将对所有请求回复“SYNC with master in progress”的错误,除了 INFO, replicaOF, AUTH, PING, SHUTDOWN, REPLCONF, ROLE, CONFIG, SUBSCRIBE, UNSUBSCRIBE, PSUBSCRIBE, PUNSUBSCRIBE, PUBLISH, PUBSUB, COMMAND, POST, HOST, LATENCY 这些命令。

replica-serve-stale-data yes

副本只读

可以配置副本节点是否接受写操作,如果接受写操作一般都会出现数据不一致的情况。

从redis 2.6 开始,默认副本节点都是只读的

replica-read-only yes


副本数据不落地磁盘

副本同步可以写到磁盘也可以不写使用socket方式:

1、使用磁盘的方式,新的副本或者断开长时间无法继续增量同步的副本,就需要进行全量同步。

2、如果是socket方式,不写到磁盘,主节点的rdb文件直接通过socket,写到副本节点内存,不同步到磁盘。这样子可以有更快的同步数据和性能。

注意:目前socket的方式还是处于实验阶段

repl-diskless-sync no

无盘同步延迟

当使用socket方式同步的时候,多个节点同步可能导致主节点出现异常,这是延迟同步可以缓解这种情况,默认是延迟5s。完全禁用延迟,尽快的同步数据设置为0即可。

repl-diskless-sync-delay 5

ping存活

副本会间隔一段时间发送ping操作,可以通过repl_ping_replica_period参数进行设置,默认是10s



同步超时

同步超时时间设置

repl-timeout 60

TCP_NODELAY

启用这个参数可以减少TCP包,使用更少的带宽进行同步。但是可以会导致副本节点的数据延迟,最多40毫秒。

repl-disable-tcp-nodelay no

设置复制缓存大小

当副本断开的时候,数据同步将写在backlog的缓冲区里面,重新连接的时候直接从缓冲区开始进行增量同步即可。

这个缓冲区之后副本连接的时候才会分配。缓冲区越大,可以缓存数据越多,意味着副本断开时间越长,还可以进行增量同步。

repl-backlog-size 1mb

缓冲区释放时间

当副本不再连接,backlog缓冲区将被释放。如果设置为0,表示永远不释放。

repl-backlog-ttl 3600

副本优先级

当主节点不可用的时候,哨兵根据优先级提升为主节点,数字越低表示优先级越高,默认是100

replica-priority 100

副本写延迟,禁用主节点的写操作

副本同步会存在延迟,至少3个写操作,时间延迟小于等于10秒的副本,主节点就停止写入操作。这两个参数只要一个设置为0,就禁用该功能。

min-replicas-to-write 3
min-replicas-max-lag 10

副本通知IP和端口

redis服务没有跟哨兵在同一个网络,比如:在容器里面跑,info replication查看到IP和端口,哨兵就有可能访问不到,这时候就需要,指定对外的IP和端口,提供给哨兵检测。

 replica-announce-ip 192.168.122.100
replica-announce-port 1234



相关推荐

订单超时自动取消业务的 N 种实现方案,从原理到落地全解析

在分布式系统架构中,订单超时自动取消机制是保障业务一致性的关键组件。某电商平台曾因超时处理机制缺陷导致日均3000+订单库存锁定异常,直接损失超50万元/天。本文将从技术原理、实现细节、...

使用Spring Boot 3开发时,如何选择合适的分布式技术?

作为互联网大厂的后端开发人员,当你满怀期待地用上SpringBoot3,准备在项目中大显身手时,却发现一个棘手的问题摆在面前:面对众多分布式技术,究竟该如何选择,才能让SpringBoot...

数据库内存爆满怎么办?99%的程序员都踩过这个坑!

你的数据库是不是又双叒叕内存爆满了?!服务器监控一片红色警告,老板在群里@所有人,运维同事的电话打爆了手机...这种场景是不是特别熟悉?别慌!作为一个在数据库优化这条路上摸爬滚打了10年的老司机,今天...

springboot利用Redisson 实现缓存与数据库双写不一致问题

使用了Redisson来操作Redis分布式锁,主要功能是从缓存和数据库中获取商品信息,以下是针对并发时更新缓存和数据库带来不一致问题的解决方案1.基于读写锁和删除缓存策略在并发更新场景下,...

外贸独立站数据库炸了?对象缓存让你起死回生

上周黑五,一个客户眼睁睁看着服务器CPU飙到100%——每次页面加载要查87次数据库。这让我想起2024年Pantheon的测试:Redis缓存能把WooCommerce查询速度提升20倍。跨境电商最...

手把手教你在 Spring Boot3 里纯编码实现自定义分布式锁

为什么要自己实现分布式锁?你是不是早就受够了引入各种第三方依赖时的繁琐?尤其是分布式锁这块,每次集成Redisson或者Zookeeper,都得额外维护一堆配置,有时候还会因为版本兼容问题头疼半...

如何设计一个支持百万级实时数据推送的WebSocket集群架构?

面试解答:要设计一个支持百万级实时数据推送的WebSocket集群架构,需从**连接管理、负载均衡、水平扩展、容灾恢复**四个维度切入:连接层设计-**长连接优化**:采用Netty或Und...

Redis数据结构总结——面试最常问到的知识点

Redis作为主流的nosql存储,面试时经常会问到。其主要场景是用作缓存,分布式锁,分布式session,消息队列,发布订阅等等。其存储结构主要有String,List,Set,Hash,Sort...

skynet服务的缺陷 lua死循环

服务端高级架构—云风的skynet这边有一个关于云风skynet的视频推荐给大家观看点击就可以观看了!skynet是一套多人在线游戏的轻量级服务端框架,使用C+Lua开发。skynet的显著优点是,...

七年Java开发的一路辛酸史:分享面试京东、阿里、美团后的心得

前言我觉得有一个能够找一份大厂的offer的想法,这是很正常的,这并不是我们的饭后谈资而是每个技术人的追求。像阿里、腾讯、美团、字节跳动、京东等等的技术氛围与技术规范度还是要明显优于一些创业型公司...

mysql mogodb es redis数据库之间的区别

1.MySQL应用场景概念:关系型数据库,基于关系模型,使用表和行存储数据。优点:支持ACID事务,数据具有很高的一致性和完整性。缺点:垂直扩展能力有限,需要分库分表等方式扩展。对于复杂的查询和大量的...

redis,memcached,nginx网络组件

1.理解阻塞io,非阻塞io,同步io,异步io的区别2.理解BIO和AIO的区别io多路复用只负责io检测,不负责io操作阻塞io中的write,能写多少是多少,只要写成功就返回,譬如准备写500字...

SpringBoot+Vue+Redis实现验证码功能

一个小时只允许发三次验证码。一次验证码有效期二分钟。SpringBoot整合Redis...

AWS MemoryDB 可观测最佳实践

AWSMemoryDB介绍AmazonMemoryDB是一种完全托管的、内存中数据存储服务,专为需要极低延迟和高吞吐量的应用程序而设计。它与Redis和Memcached相似,但具有更...

从0构建大型AI推荐系统:实时化引擎从工具到生态的演进

在AI浪潮席卷各行各业的今天,推荐系统正从幕后走向前台,成为用户体验的核心驱动力。本文将带你深入探索一个大型AI推荐系统从零起步的全过程,揭示实时化引擎如何从单一工具演进为复杂生态的关键路径。无论你是...

取消回复欢迎 发表评论: