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

Redis 完整配置模板

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

基础参数(适用Spring Boot)

spring:redis:host: 127.0.0.1port: 6379password: your_passworddatabase: 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:7003max-redirects: 3  # 最大重定向次数

哨兵模式配置

sentinel:master: mymasternodes:- 192.168.1.201:26379- 192.168.1.202:26379password: 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)实时跟踪连接池状态和内存使用率。

http://www.xdnf.cn/news/123211.html

相关文章:

  • 【UML建模】starUML工具
  • 房地产安装工程师简历模板
  • BBRv2,v3 吞吐为什么不如 BBRv1
  • Python元组全面解析:从基础到高级应用指南
  • AI文生图模型对比
  • 详解数据存储中的端到端数据校验技术
  • .NETCore部署流程
  • Caffeine 深度解析:从核心原理到生产实践
  • 保安员理论考试要点总结
  • 如何初入学习编程包含学习流程图
  • 多路转接epoll原理详解
  • SLAM常用地图对比示例
  • OSI七层模型和TCP/IP四层模型
  • Kotlin函数体详解:表达式函数体 vs 代码块函数体——使用场景与最佳实践
  • 安全生产知识竞赛活动方案流程规则
  • 西甲001:奥萨苏纳VS塞维利亚
  • 系统高性能设计核心机制图解:缓存优化、链表调度与时间轮原理
  • SSH 反向隧道访问内网服务
  • 容器修仙传 我的灵根是Pod 第9章 时空禁术(Job与CronJob)
  • gitlab-ce容器镜像源(国内)
  • go 的 net 包
  • Vue 计算属性 VS 侦听器:从原理到性能的深度对比
  • Linux 中断控制器驱动程序浅析
  • 解决ROS2安装过程中无法连接raw.githubusercontent.com的问题
  • 黑马 redis面试篇笔记
  • [web]攻防世界 easyphp
  • 第1讲:Transformers 的崛起:从RNN到Self-Attention
  • AlphaGo 究竟是如何通过深度学习和强化学习自主学习棋局策略的?
  • Vue 3 的核心组合式 API 函数及其完整示例、使用场景和总结表格
  • 《从混乱到有序:ArkUI项目文件结构改造指南》