当前位置: 首页 > news >正文

恩做网站动态页面好python编程网页版

恩做网站动态页面好,python编程网页版,做旅游网站用什么颜色,小程序代理模板目录 Redis 集群(Cluster)概述 Cluster 的工作原理 Cluster 配置与部署 Cluster 常见问题与限制 Redis Sentinel(哨兵)机制概述 Sentinel 的工作机制 Sentinel 配置与部署 Sentinel vs Cluster 总结 Redis 集群&#xff…

目录

  1. Redis 集群(Cluster)概述

  2. Cluster 的工作原理

  3. Cluster 配置与部署

  4. Cluster 常见问题与限制

  5. Redis Sentinel(哨兵)机制概述

  6. Sentinel 的工作机制

  7. Sentinel 配置与部署

  8. Sentinel vs Cluster

  9. 总结


Redis 集群(Cluster)概述

Redis Cluster 是 Redis 提供的一种 分布式部署方案,用来在多个 Redis 实例之间分散数据,实现 高可用性横向扩展能力

核心特性

  • 数据自动分片(Sharding)
  • 无中心架构,所有节点互为平等
  • 内置故障转移机制
  • 支持主从复制

Cluster 的工作原理

节点结构

  • 主节点(Master):负责处理读写请求并保存部分数据槽。
  • 从节点(Slave):复制主节点数据,用于故障转移。
  • 一个集群至少需要 3 个主节点,推荐每个主节点配备一个从节点,即至少 6 个节点

分片机制(Slot)

  • Redis 集群总共定义了 16384 个槽(slots)
  • 每个主节点负责一部分 slot(例如 0-5460,5461-10922,10923-16383)。
  • 客户端根据 CRC16(key) mod 16384 计算键属于哪个 slot,自动路由到正确节点。

读写流程

  1. 客户端发送请求 → Redis 客户端库计算 slot → 发送到对应主节点。
  2. 如果请求发错了节点,返回 MOVEDASK 重定向。
  3. 从节点可以设置为 只读(readonly) 以分担主节点压力。

故障转移

  • 集群内部通过 Gossip 协议 相互探测。
  • 多个节点确认主节点不可用时,触发 failover。
  • 从节点被提升为主节点,重新分配 slots。

Cluster 配置与部署

示例配置(redis.conf)

port 7000
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes

创建集群命令

redis-cli --cluster create \127.0.0.1:7000 127.0.0.1:7001 \127.0.0.1:7002 127.0.0.1:7003 \127.0.0.1:7004 127.0.0.1:7005 \--cluster-replicas 1

Cluster 常见问题与限制

限制描述
不支持多 key 跨 slot 操作除非 key 属于相同 hash tag(例如 {user:1}.name
不支持事务(multi/exec)跨节点事务不被支持
部署复杂度较高运维和扩容需注意数据重分布

Redis Sentinel(哨兵机制)概述

Sentinel 是 Redis 的高可用解决方案,主要用于主从结构下的自动故障转移和系统监控。

Sentinel 提供以下功能:

  • 自动故障检测
  • 主从切换(Failover)
  • 通知机制(通过 API)
  • 动态配置更新

Sentinel 的工作机制

节点发现

  • 哨兵节点通过配置文件中指定的主节点地址,自动发现主从关系。
  • 多个 Sentinel 节点之间通过协议通信,形成分布式监控网络。

故障检测

  • 每个 Sentinel 定期向主从节点发送 PING

  • 判断标准:

    • 主观下线(sdown):单个 Sentinel 判断主节点不可达。
    • 客观下线(odown):多个 Sentinel 达成一致后认定故障。

主从切换(Failover)

  • 在主节点故障并确认 odown 后,进行如下步骤:

    1. 选择一个从节点为新的主节点。
    2. 其他从节点重新指向新的主节点。
    3. 通知所有客户端更新配置。

通知机制

  • Sentinel 支持发布订阅机制,可以通知外部系统故障或切换事件。
  • 也可以通过 Sentinel API 查询当前状态。

Sentinel 配置与部署

sentinel.conf 示例

port 26379
sentinel monitor mymaster 127.0.0.1 6379 2
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 60000
sentinel parallel-syncs mymaster 1

启动 Sentinel

redis-sentinel sentinel.conf

CLI 命令示例

redis-cli -p 26379 sentinel get-master-addr-by-name mymaster

Sentinel vs Cluster

特性SentinelCluster
数据分片❌ 不支持✅ 支持
主从架构✅ 支持✅ 支持
高可用✅ 自动故障转移✅ 自动故障转移
部署复杂度⭐ 简单⚠️ 较复杂
跨节点事务✅ 支持❌ 不支持
场景推荐小型部署,高可用大规模数据分布式

总结

项目ClusterSentinel
高可用
自动切换
分布式扩展
实现机制分片 + 主从主从 + 哨兵
使用复杂度
客户端兼容性特殊支持(支持 cluster 的客户端)普通客户端即可
http://www.dtcms.com/a/514099.html

相关文章:

  • 建设网站公司有哪些阿坝网站设计
  • 网站网络投票建设模板dedecms 迁移 wordpress
  • 四川网站建设培训学校上海网站开发技术最好公司
  • 深圳网站设计排名营销推广文案
  • 网站代码素材网站开发所需的技术
  • 房产网站运营方案个人可以做招聘网站吗
  • 中文字体怎么设计网站包装设计公司哪家好
  • 网站制作书生电商平台介绍
  • 国外做的好的网站wordpress发送邮件出现502
  • 昆明优秀网站青岛博海建设集团有限公司网站
  • 代做网站排名wps免费模板网站
  • 怎样做网站分流赚钱怎么建设自己的卡盟网站
  • 中国空间站拒绝10国名单小程序代理加盟有哪些大品牿
  • 上海建设银行网站上班时间表洛阳网站建设建站系统
  • 网站开发帐务处理网站标题是什么
  • 绵阳个人网站建设做网站属于什么备案
  • 传世网站建设一家公司为什么要建官方网站
  • 网站联系方式设置要求thinkphp做的教育网站
  • 企业为什么要年检seo流量查询
  • 网站关键词优化有用吗网站做软件有哪些内容
  • 这是我自己做的网站珠海网站建设小小网络
  • div使用太多影响网站收录网站建设印花税
  • 河北邯郸做移动网站图片压缩wordpress
  • 网站开发 ip6做视频网站赚钱嘛
  • 门户网站制作哪专业wordpress批量定时发布
  • 河北省建设中心网站wordpress提示无法创建目录
  • 网站后台 黑链接衡阳企业seo优化首选
  • 网站开发算固定资产aso优化方案
  • 怎样做网站的背景图片wordpress用户量上限
  • 网站建设合同通用范本网站地图 格式