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删除表与清空数据:DROPTA...
2024-12-15 13:07:14MySQL数据库导出全攻略:mysqld...
2024-12-20 14:26:24MySQL服务启动失败?5步轻松解决启动...
2024-12-14 22:38:06揭秘SQL注入:网络安全漏洞与防范策略
2024-12-21 10:14:53SQL Server字符串函数全面解析:...
2024-12-22 16:58:38MySQL三表联查优化技巧及实例解析
2024-12-16 07:48:39SQL字段截取技巧解析:不同数据库系统下...
2024-12-17 20:36:48Redis数据类型详解:有序集合与位图使...
2024-12-17 02:35:26MySQL零基础入门指南:掌握关键知识点...
2024-12-18 09:00:37MySQL数据导出与导入全攻略:mysq...
2024-12-20 07:54:23最新文章
23
2024-12
23
2024-12
23
2024-12
23
2024-12
23
2024-12
23
2024-12
23
2024-12
23
2024-12
22
2024-12
22
2024-12
热门文章
1
SQL2000数据库备份压缩技巧:优化空...
怎么将SQL2000中的较大的备份数据库压缩变小更改数据库属性-选项-恢复模型很...
2
高效掌握:CMD命令轻松启动、关闭及登录...
如何用cmd命令快速启动和关闭mysql数据库服务开发中经常使用MySQL数据库...
3
SQL字符串处理技巧:单引号使用与转义标...
SQL语句中,字符串类型的值均使用什么符号标明?单引号如果字符串内有单引号,请小...
4
Windows环境下Redis安装指南与...
redis安装windowsredis基本简介与安装安装Redis首先需要获取安...
5
深度解析:Redis性能优势与局限性,助...
redis有哪些优缺点?Redis的全称是RemoteDictionary.Se...
6
深入解析:MySQL数据库的特性与应用
mysql是什么MySQL是一个关系数据库管理系统。MySQL是一个开源关系数据...
7
Linux Redis后台启动教程:配置...
linux怎么启动redis1、首先,为了管理方便,将Redis文件中的conf...
8
MySQL浮点数与Decimal类型详解...
MySQL中的float和decimal类型有什么区别小数类型可以准确地表示非常...
9
C语言实现输入10个整数并找出最大最小值...
C语言从键盘输入任意的10个整数,从中找出最大值和最小值并输出代码:#inclu...
10
揭秘MySQL:为何将可重复读设为默认事...
mysql默认的事务隔离级别是READUNCOMMITTED(未提交读)、REA...