Redis哨兵与集群配置对比:性能优化与架构解析
redis哨兵和集群区别是什么?
RedisSentry和Cluster的区别如下。
监控:Sentinel会不断检查你的主服务器和从服务器是否正常运行。
通知:如果监控的Redis服务器出现问题,Sentinel可以通过管理员或其他应用程序通知服务器。
发送通知。
即使集群使用Sentinel,每个Redis实例存储的都是全量,每个Redis存储的内容都是完整的数据,浪费内存,而且有木桶效应。
为了最大化内存使用,可以使用集群,构成分布式存储。
即每个Redis存储的内容不同,总共有16384个位置。
每个redis都被分配了slot。
hash_slot=crc16(key)mod16384找到对应的槽。
如果有{},则取{}中的为可用key,否则整个key可用。
钥匙。
主从、哨兵、集群架构优缺点对比
优点:·架构简单,部署方便。
性价比高:使用缓存时不需要有备份节点(单个实例的可用性可以通过supervisor或crontab来保证)。
当然,为了满足企业的高可用性,也可以牺牲一个备份节点。
,但同时只有一个实例对外提供服务,代表着高性能。
缺点:·数据可靠性得不到保证。
一旦使用缓存并重新启动进程,数据就会丢失。
即使有备份节点解决高可用,仍然无法解决缓存发热问题,因此不适合对数据可靠性要求较高的企业。
高性能受限于单核处理器的处理能力(Redis是单线程机制),处理器是主要瓶颈,所以适合d命令简单的场景。
操作和较少的排序和计算。
您也可以考虑使用Memcached。
中间件-Redis详解(2)
Redis详解(二):中间件架构及功能介绍Redis有多种部署和管理方式。
。
优点:部署简单,适合小型应用或者测试环境。
缺点:性能有限,单点故障。
原理:主数据库(Master)和从数据库(Slave)之间数据同步。
设置过程包括复制配置文件、修改配置和启动实例。
应用:通过读写分区提高可用性,但从节点只读,写操作受到限制。
Sentinel用于监控主从节点的健康状况,当主节点出现故障时,自动切换并向主节点提供新的信息,保证服务连续性。
集群提供数据分布和高可用性。
至少需要3个主节点和额外的从节点。
分片:去中心化存储解决了单点存储的瓶颈,但单密钥仍保留在单个实例上。
主从:读写分离提高了可靠性,但手动故障切换不方便。
Sentinel:提供自动故障转移和配置,提高高可用性配置至少需要3个sentinel。
数据过滤:过滤Redis中的热点数据,如使用键盘命令或扫描命令。
性能和服务:keys命令会影响在线服务,因此可以考虑使用非阻塞scan命令。