Redis 完整配置模板

一、基础连接配置(单机模式)

基础参数(适用Spring Boot)

spring:
  redis:
    host: 127.0.0.1
    port: 6379
    password: your_password
    database: 0  # 默认DB索引
    timeout: 2000ms  # 全局操作超时时间

二、连接池参数(通用核心配置)

连接池详细配置(以Lettuce为例)

lettuce:
  pool:
    max-active: 200    # 最大活跃连接数(按QPS×响应时间计算)
    max-idle: 200      # 最大空闲连接数(建议与max-active一致)
    min-idle: 20       # 最小空闲连接预热连接数
    max-wait: 100ms    # 获取连接最长等待时间
    test-while-idle: true     # 开启空闲连接健康检测
    time-between-eviction-runs: 30s  # 空闲连接检测周期

三、集群/哨兵模式配置

Redis Cluster配置示例

spring:
  redis:
    cluster:
      nodes:
        - 192.168.1.101:7001
        - 192.168.1.102:7002
        - 192.168.1.103:7003
      max-redirects: 3  # 最大重定向次数

哨兵模式配置

sentinel:
  master: mymaster
  nodes:
    - 192.168.1.201:26379
    - 192.168.1.202:26379
  password: sentinel_pass

四、性能优化参数
properties

内核级优化(redis.conf)

maxmemory 16gb                # 最大内存限制
maxmemory-policy volatile-lru # 内存淘汰策略
tcp-backlog 512               # 高并发连接队列长度
timeout 300                   # 连接空闲超时(秒)

五、客户端配置模板

Jedis(Java原生)‌

JedisPoolConfig config = new JedisPoolConfig();
config.setMaxTotal(200);         // 最大连接数:ml-citation{ref="6" data="citationList"}
config.setMinIdle(20);           // 最小空闲连接数:ml-citation{ref="1" data="citationList"}
config.setMaxWaitMillis(100);    // 等待超时时间:ml-citation{ref="5" data="citationList"}
JedisPool pool = new JedisPool(config, "redis-host", 6379, 2000, "password");

Go-Redis‌

client := redis.NewClient(&redis.Options{
    Addr:     "redis-host:6379",
    Password: "your_password",
    DB:       0,
    PoolSize: 200,               // 连接池大小:ml-citation{ref="6" data="citationList"}
    MinIdleConns: 20,            // 最小空闲连接数:ml-citation{ref="1" data="citationList"}
    PoolTimeout: 100 * time.Millisecond,
})

六、安全增强配置
yaml

生产环境安全建议

requirepass your_strong_password  # 强制密码认证
rename-command FLUSHDB ""         # 禁用高危命令
protected-mode yes                 # 开启保护模式
bind 127.0.0.1 192.168.1.0/24     # IP白名单限制

注释说明‌:
连接池参数需根据QPS × 平均响应时间动态计算(公式:max-active = QPS×响应时间(ms)/1000 + 冗余值)
集群模式下建议禁用testOnBorrow检测,优先通过testWhileIdle保障连接健康
内存分配策略推荐volatile-lru(对带过期时间的Key执行LRU淘汰)

通过此模板可快速搭建高可用、高性能的Redis服务,建议配合监控工具(如Prometheus)实时跟踪连接池状态和内存使用率。

redis.conf 是 Redis 的默认配置文件,可以在 Redis 官方网站上下载,也可以在 Redis 安装目录下找到该文件。以下是 Redis 配置文件的一些常用配置选项: - bind:指定 Redis 监听的 IP 地址,默认为 127.0.0.1,表示只能本机访问 Redis。如果想要其他机器访问 Redis,则需要将该选项设置为 0.0.0.0。 - port:指定 Redis 监听的端口号,默认为 6379。 - daemonize:是否以守护进程方式运行 Redis,默认为 no。如果设置为 yes,则 Redis 后台运行,不输出任何日志信息。 - logfile:指定日志文件的名称,默认为 stdout,表示输出到标准输出流。可以设置为一个文件路径,将日志信息输出到该文件。 - databases:设置 Redis 支持的数据库数量,默认为 16。 - save:设置 Redis 自动保存快照的频率。可以设置多组 save 选项,每组选项包括两个参数:时间和修改次数。例如 save 900 1 表示如果 900 秒内有至少 1 个键被修改,Redis 就会自动保存快照。 - rdbcompression:是否开启 RDB 文件压缩,默认为 yes。如果开启,会花费更多 CPU 资源,但是可以减少磁盘空间。 - maxclients:设置 Redis 允许的最大客户端连接数,默认为 10000。 - timeout:设置客户端连接 Redis 服务器的超时时间,默认为 0,表示不超时。 - requirepass:设置 Redis 的密码。如果没有设置密码,则可以通过空密码连接 Redis。 以上只是一些常用配置选项,Redis 支持的选项远不止这些。如果需要了解更多配置选项,请参考 Redis 官方文档。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值