创建 Redis 实例时,系统将应用默认的参数模板。
Alauda 应用服务为每个版本的 Redis 提供了专门的参数模板(6.0+ 版本提供三个模板,5.0 版本提供两个),以满足不同的操作需求。
参数模板 | 说明 | 注意事项 |
---|---|---|
RDB 参数模板 | RDB 持久化参数模板 配置 Redis 以 RDB 持久化方式工作,按照配置的时间间隔将内存的数据集序列化为二进制快照并保存到磁盘。这种方式非常适合资源有限且需要在性能和数据耐久性之间取得平衡的环境,允许分钟级别的数据丢失。在此模式下,Redis 可以作为持久化的数据存储。 | 数据耐久性依赖于 save 参数的配置,通常提供分钟级别的恢复点目标(RPO)。 |
AOF 参数模板 | AOF 持久化参数模板 配置 Redis 以追加只文件(AOF)持久化,这种方式将所有写操作按照顺序记录,确保数据的完整性。在实例恢复期间,Redis 会通过重放 AOF 文件中的操作来重建数据集。这种方式适合资源充足的环境,在这些环境中,数据安全性优先于性能考虑。在此模式下,Redis 也可以充当持久化数据存储。 | 频繁的 fsync 操作对 AOF 持久化所需的高性能存储基础设施有要求,可能会影响整体的 Redis 性能,但提供秒级的 RPO。 |
无盘参数模板 | 无盘参数模板 完全禁用了 Redis 的持久化机制。在这种配置中,Redis 纯粹作为内存缓存,以加速应用性能。所有数据保留在内存中,没有磁盘持久化,导致 Redis 重启或故障时数据丢失。这种配置最大化了性能,但牺牲了数据耐久性。 | 数据只存在于内存中,消除了与存储相关的性能开销。然而,如果所有 Redis 节点失败,则会导致数据的完全丢失。 |
创建 Redis 实例时,请在 创建 Redis 实例 页面中的 参数模板 字段中选择最符合您业务需求的模板。
您还可以创建自定义参数模板以供多个实例重复使用。
Redis 参数根据更改生效的方式分为三类:
名称 | 参数 | 说明 |
---|---|---|
热更新参数 | 许多支持动态重新配置的参数 | 更改立即生效,无需重启实例。 |
重启更新参数 | databases , rename-command , rdbchecksum , tcp-backlog , io-threads , io-threads-do-reads | 更改需要重启整个实例才能生效。 |
不可修改参数 | bind , protected-mode , port , supervised , pidfile , dir , 等 | 这些参数要么是内置的系统配置,要么在实例初始化后修改可能会导致操作不稳定,因此不可更改。 |
修改 Redis 参数时,请遵循以下最佳实践:
实例的数据节点参数配置通过 Redis CR 资源的 spec.customConfig
字段指定。有关参数的详细说明,请参考 API 文档。
数据节点注册到哨兵节点的参数配置如下:
当前仅支持以下三个参数:
down-after-milliseconds
,failover-timeout
,parallel-syncs
。