作者介绍 顾伟涛,曾任职于百度、奇虎360,现为杭州铭师堂教育资深DBA,擅长数据库监控、备份、高可用架构设计和自动化运维,对Redis和MongoDB方面有深入研究,关注分布式存储、大数据存储、消息队列、搜索引擎等后端技术。 前言 随着很多公司使用Redis作为缓存和高性能存储方案,Redis的可用性也变得越来越重要。目前比较主流的HA方案是Sentinel Redis主从复制。Sentinel是Redis官方自带的高可用中间件,运维简单、稳定,建议使用Redis 3.0及以上稳定版本。 本文重点介绍如何使用该架构,以及需要注意的问题和解决方案。 HA架构图 首先部署Redis主从复制集群,比如1主3从;然后部署3个Sentinel节点。 为了安全起见,Sentinel节点分别部署在不同的服务器上,Redis主从节点分别部署在不同服务器上。具体部署步骤,这里不再赘述。 最佳实践 针对这个HA架构,应用程序该如何使用呢?这里介绍一个比较简单可靠的使用方法。 在应用程序(APP)配置里设置如下信息:
说明:如果Sentinel上层使用了LVS,那么配置里改为VIP。 应用程序通过和Sentinel交互,获取到Redis主库信息,然后再处理读写请求。其中,由于Sentinel带来的性能开销很小,可以忽略。 需要注意的地方:
可以从Redis的info信息里查看,如下: 10.11.11.13:6379 |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|