Redis高可用配置:一主二从三哨兵模式详解与实践
创始人
2024-12-21 15:00:23
0 次浏览
0 评论
redis的一主二从三哨兵模式
Redis的一主二从三哨模式是一种高可用的部署策略,旨在保证Redis在发生故障时仍然能够提供服务。
通过配置一台主服务器和两台从服务器,并使用三个哨兵实例,当主服务器出现故障时,系统可以自动将从服务器提升为主服务器,保证服务的连续性。
配置方案如下:
主服务器IP地址:127.0.0.16001
两个从服务器IP地址:127.0.0.16002和127.0.0.16003
三台Sentinel服务器IP地址:127.0.0.116001,127.0.0.116002,127.0.0.116003
配置文件修改涉及:
将`redis.conf`复制到`redis1.conf`和`redis2.conf`编辑`redis.conf`文件并配置如下:`bind192.168.1.88127.0.0.1`protected-modeno``daemonizeyes``port6001``pidfile"/var/run/redis_6001.pid"`编辑文件`redis1.conf`和`redis2.conf`并配置如下:`bind192.168.1.88127.0.0.1`protected-modeno``daemonizeyes``port6002`或`6003``pidfile"/var/run/redis_6002.pid"或"/var/run/redis_6003.pid"``slaveof127.0.0.16001`编辑sentinel配置文件,包括`sentinel.conf`、`sentinel1.conf`和`sentinel2.conf`,并配置以下内容:`port16001``daemonizeyes``sentinelmonitormymaster127.0.0.160012`修改sentinel配置文件,配置如下:`port16002`或`16003`sentinelmonitormymaster127.0.0.160012`启动服务:
使用命令`./bin/redis-server`启动文件`redis.conf`、`redis1.conf`和`redis2.conf`。使用`./bin/redis-sentinel`命令启动哨兵服务。
验证配置:
通过`./bin/redis-cli-p16001`命令连接到Sentinel并运行`sentinelmastermymaster`来验证主从状态。手动关闭主服务器,观察从服务器能否升级为主服务器。
测试设置和数据采集以验证从服务器之间的数据同步。
控制器功能包括:
状态监控:监控主服务器的状态。
故障转移:当主服务器出现异常时,从服务器自动提升为新的主服务器。
配置调整:主从转换后,相关配置文件(如`redis.conf`、`redis1.conf`、`redis2.conf`、`sentinel.conf`)会自动更新。
学习资源:
RedisSentinel官方文档Redis哨兵机制原理及配置redis怎么做到高可用的高并发
Redis高可用:如果部署主从架构,只需要添加哨兵,就可以实现。如果任意实例宕机,会自动进行主从切换。
Redis高并发:主从架构,一主多从。
一般来说,对于很多项目来说已经足够了。
采用单master写入数据,单机数万QPS。
使用多个slave来查询数据。
多个从实例可以提供每秒10万的QPS。
redis在高并发的同时,也需要容纳大量的数据:一主多从,每个实例容纳完整的数据。
比如redismaster有10G内存,但实际上你只能容纳10G数据。
如果你的缓存需要容纳大量的数据,达到几十GB,甚至几百GB,几吨,那么你就需要Redis集群,而有了Redis集群,你可以提供每秒几十万条数据。
读写同时进行。
2、redis无法支持高并发的瓶颈在哪里?单机3.如果redis要支持10万+以上并发,应该怎么做?阅读和写作分离。
一般来说,缓存一般用来支持高读并发。
写请求相对较少。
可能每秒只有几千个写请求,而大量的读一两千个请求。
,每秒20万次读取,读写分离的主从架构->读写分离->支持10万+读取QPS的架构

相关文章

MySQL表字段修改指南:从基础到实践教...
2024-12-17 04:17:10
MySQL数据库:助力高效数据管理与应用...
2024-12-17 05:31:30
深入浅出:SQL注入原理及防范策略
2024-12-30 02:36:06
MySQL数据表创建与优化:WorkBe...
2025-03-14 15:29:33
SQL Server密码遗忘?快速找回指...
2025-01-14 22:40:43
SQL Server数据库备份与恢复方法...
2025-01-12 07:31:00
Win7系统下Redis安装指南:详细步...
2024-12-14 15:16:47
Solidworks 2022 SQLS...
2024-12-31 18:34:23
SQL字符串替换方法详解及实践案例
2025-02-11 14:15:08
Oracle PL/SQL执行多SQL脚...
2025-04-01 18:35:50最新文章
04
2025-04
04
2025-04
04
2025-04
04
2025-04
04
2025-04
04
2025-04
04
2025-04
04
2025-04
04
2025-04
04
2025-04
热门文章
1
高效掌握:CMD命令轻松启动、关闭及登录...
如何用cmd命令快速启动和关闭mysql数据库服务开发中经常使用MySQL数据库...
2
MySQL分区删除技巧与8.0版本新特性...
mysql删除分区在MySQL中,删除分区操作主要使用“可替代”的命令与“ dr...
3
Python代码实现:如何判断三角形的三...
python三角形三条边长,判断能否构成三角形Python三角形的三个长边如下:...
4
深度解析:MySQL查询语句执行顺序及优...
mysql查询语句执行顺序当这是由于执行SQL的过程时,了解其过程很重要。 ...
5
SQL教程:使用SUBSTRING和IN...
sql取特定字符的前面几位字符selectsubstr('L-0FCLDRBCT...
6
MySQL日期差异计算方法:轻松获取日期...
MySQL计算时间差两日期相减得月份mysql两时间相减得月MySQL计算时间之...
7
MySQL及SQL查询获取前10条数据方...
MySql查询前10条数据sql语句是从MySQL获取前1 0个数据的SQL查询...
8
MySQL启动问题排查与解决指南
Mysql为什么启动不了如果要配置MySQL,则遇到无法启动的问题,可能是由于配...
9
DbVisualizer添加MySQL数...
如何在DbVisualizer中添加本地mysql数据库由于DbVisualiz...
10
SQL字段默认值设置全攻略:轻松实现自动...
sql如何设置字段默认值设置SQL中某个字段的默认值;需要遵循几个步骤。首先您需...