集群,在Redis企业术语中万博体育彩,是一组云实例,虚拟机/容器节点,或裸金属服务器,让你在一个共享的内存/存储池中创建任意数量的Redis数据库。在创建或删除新数据库时,集群不需要向上/向外(或向下/向内)扩展。只有当达到预定义的限制阈值之一时,才会触发伸缩操作,例如:内存、CPU、网络、存储IOPS等。
在任何给定的时间,一个Redis Ente万博体育彩rprise集群节点可以包含0到几百个Redis数据库,它们是以下类型之一:
- 一个简单的数据库,即一个主碎片
- 高可用性(HA)数据库,即一对主碎片和从碎片
- 一个集群数据库,包含多个主碎片,每个主碎片管理数据集的一个子集(或在Redis术语中,一个不同范围的“散列槽”)
- 一个HA集群数据库,即多对主/从分片
每个数据库可以以多种形式构建:
- 基于DRAM数据库的Redis
- 一种闪存上的Redis数据库,其中闪存(SSD或持久内存)用作DRAM扩展器
- 一个memcached数据库(实际上是一个Redis on DRAM数据库,可以通过memcached协议访问)
每个数据库可以通过多种方式访问:
- 数据库端点:只需将你的应用程序连接到数据库端点,Redis Enterprise就会透明地处理所有的扩展和故障转移操作。万博体育彩
- 哨兵API:使用哨兵协议连接到集群中的正确节点以访问数据库。
- OSS集群API:使用集群API直接连接到集群的每个碎片,而不需要任何额外的跃点。
来自不同应用和用户的多个数据库可以在完全隔离的情况下运行在同一个Redis Enterprise集群和节点上。万博体育彩
无共享、线性可伸缩、多租户、对称架构
万博体育彩复述,企业集群
万博体育彩Redis Enterprise集群建立在数据路径组件(即代理和分片)和控制/管理路径组件(即集群管理过程)之间的完全分离之上,这提供了许多重要的好处:
- 性能:数据路径实体不需要处理控制和管理职责。该体系结构保证任何处理周期都专门用于服务用户的请求,从而提高整体性能。例如,Redis企业集群中的每个Redis碎片都像一个独立的Redis万博体育彩实例一样工作。shard不需要监控其他Redis实例,不需要处理失败或分区事件,并且不知道哪些散列槽正在被管理。
- 可用性:应用程序继续从Redis数据库访问数据,即使分片、重新分片和重新平衡发生。不需要手动更改以确保数据访问。
- 安全:万博体育彩Redis Enterprise阻止配置命令通过常规的Redis api被执行。通过遵循基于角色的授权控制的安全UI、CLI或API接口,任何配置操作都是允许的。基于代理的架构确保每个碎片只能创建经过认证的连接,Redis碎片只能接收经过认证的请求。
- 可管理性:数据库配置、配置更改、软件更新等都是通过单个命令(通过UI或API)以分布式方式完成的,并且万博电竞客服不会中断用户通信。
万博体育彩Redis企业集群组件
万博体育彩Redis Enterprise集群构建在对称架构上,所有节点包含以下组件:
- 复述,碎片:一个开源的Redis实例,主或从角色是数据库的一部分。
- 实现零延迟的代理:代理运行在集群的每个节点上,用C编写,基于直通、多线程、无锁的无状态体系结构。代理处理以下主要功能:
- 向应用程序/用户隐藏群集复杂性
- 维护数据库端点
- 请求转发
- 支持memcached协议
- 通过SSL管理数据加密
- 提供强大的、基于客户机的SSL身份验证
- 通过流水线和连接管理实现Redis加速
- 群集管理器:该组件包含一组分布式流程,共同管理整个集群生命周期。集群管理器实体与数据路径组件(代理和Redis碎片)完全分离,并具有以下职责:
- 数据库配置和取消配置
- 资源管理
- 监督流程
- 自动伸缩
- re-sharding
- 重新平衡
- 安全的REST API:Redis Enterprise cluster上的所有管理和控制操作都是通过一个专用且安全的AP万博体育彩I执行的,该API能够抵御攻击,并提供对群集管理操作的更好控制。此接口提供的一个主要优势是能够以非常高的速率提供和取消提供Redis资源,并且几乎不依赖于底层基础设施。这使得它非常适合新一代基于微服务的环境。