活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 618智算钜惠季 爆款云主机2核4G限时秒杀,88元/年起!
  • 免费体验DeepSeek,上天翼云息壤 NEW 新老用户均可免费体验2500万Tokens,限时两周
  • 云上钜惠 HOT 爆款云主机全场特惠,更有万元锦鲤券等你来领!
  • 算力套餐 HOT 让算力触手可及
  • 天翼云脑AOne NEW 连接、保护、办公,All-in-One!
  • 中小企业应用上云专场 产品组合下单即享折上9折起,助力企业快速上云
  • 息壤高校钜惠活动 NEW 天翼云息壤杯高校AI大赛,数款产品享受线上订购超值特惠
  • 天翼云电脑专场 HOT 移动办公新选择,爆款4核8G畅享1年3.5折起,快来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

智算服务

打造统一的产品能力,实现算网调度、训练推理、技术架构、资源管理一体化智算服务
智算云(DeepSeek专区)
科研助手
  • 算力商城
  • 应用商城
  • 开发机
  • 并行计算
算力互联调度平台
  • 应用市场
  • 算力市场
  • 算力调度推荐
一站式智算服务平台
  • 模型广场
  • 体验中心
  • 服务接入
智算一体机
  • 智算一体机
大模型
  • DeepSeek-R1-昇腾版(671B)
  • DeepSeek-R1-英伟达版(671B)
  • DeepSeek-V3-昇腾版(671B)
  • DeepSeek-R1-Distill-Llama-70B
  • DeepSeek-R1-Distill-Qwen-32B
  • Qwen2-72B-Instruct
  • StableDiffusion-V2.1
  • TeleChat-12B

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场创新解决方案
办公协同
  • WPS云文档
  • 安全邮箱
  • EMM手机管家
  • 智能商业平台
财务管理
  • 工资条
  • 税务风控云
企业应用
  • 翼信息化运维服务
  • 翼视频云归档解决方案
工业能源
  • 智慧工厂_生产流程管理解决方案
  • 智慧工地
建站工具
  • SSL证书
  • 新域名服务
网络工具
  • 翼云加速
灾备迁移
  • 云管家2.0
  • 翼备份
资源管理
  • 全栈混合云敏捷版(软件)
  • 全栈混合云敏捷版(一体机)
行业应用
  • 翼电子教室
  • 翼智慧显示一体化解决方案

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
  • 天翼云EasyCoding平台
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼云东升计划
  • 适配中心
  • 东升计划
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
开放能力
  • EasyCoding敏捷开发平台
培训与认证
  • 天翼云学堂
  • 天翼云认证
魔乐社区
  • 魔乐社区

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 建议与反馈
  • 用户体验官
  • 服务保障
  • 客户公告
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 智算服务
  • 产品
  • 解决方案
  • 应用商城
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心
      文档中心

      分布式缓存服务Redis版

      分布式缓存服务Redis版

        • 产品动态
        • 服务公告
        • 2024年
        • 【优惠】正式开放2年7折,3年5折包年折扣
        • 【优惠】分布式缓存服务Redis版新增包年优惠
        • 【通知】经典版调整为白名单特性
        • 产品介绍
        • 产品介绍
        • 产品优势
        • 应用场景
        • 功能概览
        • 实例类型
        • 概览
        • 实例类型差异
        • 单机
        • 主备
        • 集群单机
        • 集群主备
        • Cluster单机
        • Cluster主备
        • Proxy集群主备
        • 读写分离
        • 实例规格
        • 基础版
        • 增强版
        • 经典版
        • 产品规格差异
        • Redis版本差异
        • Redis版本类型差异
        • 开源命令兼容性
        • Redis 5.0支持及禁用的命令
        • Redis 6.0支持及禁用的命令
        • Redis 7.0支持及禁用的命令
        • 经典版Redis2.8/4.0/5.0开源命令兼容性
        • Web CLI中支持和禁用命令
        • 部分命令使用限制
        • 实例受限使用命令
        • 安全
        • 认证与访问控制
        • 数据保护技术
        • 容灾策略
        • 数据复制
        • 监控安全风险
        • 主子账号和IAM权限管理
        • 术语解释
        • 与其他服务关系
        • 计费说明
        • 产品资费
        • 基础版
        • 增强版
        • 经典版
        • 计费项
        • 计费模式
        • 续费、到期与欠费
        • 退订
        • 快速入门
        • 入门指引
        • 环境准备
        • 创建实例
        • 连接实例
        • 使用须知
        • 用户指南
        • 使用前必读
        • 管理和使用分布式缓存服务
        • 分布式缓存服务Redis控制台简介
        • 使用限制
        • 权限管理
        • 创建用户并授权使用Redis
        • 创建Redis自定义策略
        • 连接实例
        • 连接约束
        • 查看连接地址
        • Redis登录方式
        • redis-cli连接方式
        • 控制台连接Redis
        • 通过客户端连接方式
        • 公网连接Redis实例
        • 实例生命周期管理
        • 创建实例
        • 扩容
        • 缩容
        • 退订
        • 按需与包周期互转
        • 实例大版本升级
        • 实例小版本升级
        • 实例退订保护
        • 回收站
        • 实例配置管理
        • 账号管理
        • 重置实例密码
        • 绑定公网IP
        • 白名单设置
        • 修改实例安全组
        • 实例标签配置
        • 参数配置
        • 接入机配置
        • 命令重命名
        • SSL设置
        • 修改服务端口
        • 开启扩展模块
        • 实例日常操作
        • 查看实例概览
        • 查看实例信息
        • 导出实例列表
        • 修改维护时间
        • 实例重启
        • 模块重启
        • 主从切换
        • Redis节点管理
        • 接入机节点管理
        • 应用数据管理
        • 删除实例数据
        • 缓存接入云审计
        • 查看任务中心
        • 实例备份恢复管理
        • 备份与恢复说明
        • 自动备份实例数据
        • 手动备份实例数据
        • 还原恢复实例数据
        • 实例克隆
        • 从对象存储导入
        • 查看监控与告警配置
        • 基本指标
        • 节点指标
        • 告警配置
        • 实例诊断分析
        • 大Key和热Key分析
        • 离线全量KEY分析
        • 过期KEY扫描
        • 客户端会话
        • 慢日志查询
        • 运行日志查询
        • 数据迁移指南
        • 数据迁移概述
        • 迁移方案说明
        • 自建Redis迁移到DCS
        • 使用Redis-cli迁移自建Redis(AOF文件)
        • 使用Redis-cli迁移自建Redis(RDB文件)
        • 使用RedisShake工具迁移自建Redis Cluster集群
        • 使用在线迁移自建Redis
        • 其他云厂商Redis迁移至DCS
        • 使用RedisShake工具离线迁移其他云厂商Redis Cluster集群
        • 使用在线迁移其他云厂商Redis
        • DCS实例间迁移
        • 使用在线迁移Redis
        • 使用备份文件离线迁移
        • 数据同步服务
        • 校验迁移后的Redis数据的完整性
        • 迁移常见问题
        • API参考
        • API使用说明
        • 产品规格参数说明
        • 最佳实践
        • Redis使用规范
        • 秒杀库存控制
        • 分布式Session
        • 分布式锁
        • 热点数据存储
        • 排行榜功能
        • 实时计数器
        • 大Key、热Key的发现与处理
        • Redis客户端通过CCSE连接Redis
        • Redis客户端重试
        • 弹性IP实现公网访问
        • Jedis连接池优化
        • 性能白皮书
        • 测试工具介绍
        • Redis 5.0 主备实例测试数据
        • Redis 6.0 主备实例测试数据
        • Redis 7.0 主备实例测试数据
        • Redis 5.0 Cluster主备实例测试数据
        • Redis 6.0 Cluster主备实例测试数据
        • Redis 7.0 Cluster主备实例测试数据
        • Redis 6.0 Proxy集群实例测试数据
        • Redis 7.0 Proxy集群实例测试数据
        • Redis 6.0 读写分离实例测试数据
        • Redis 7.0 读写分离实例测试数据
        • 常见问题
        • 实例类型/版本
        • 版本差异
        • Redis 4.0支持的新特性说明
        • Redis 5.0支持的新特性说明
        • Redis 6.0支持的新特性说明
        • Redis 7.0支持的新特性说明
        • 购买与计费
        • 购买与计费常见问题
        • IAM子用户无法看到新买的Redis?
        • 功能类
        • 功能类常见问题
        • 分布式缓存服务Redis与原生RedisCluster有什么区别?
        • 基本指标监控有哪些?
        • 是否支持数据持久化?
        • Redis使用
        • Redis使用常见问题
        • 集群版客户端常见错误码有哪些?
        • 执行命令时出现20010004错误码
        • redis的落盘策略是怎样?
        • Redis实例支持的单个Key和Value数据大小是否有限制?
        • 缓存实例的数据被删除后,能否找回?
        • Redis实例CPU使用率达到100%的原因?
        • Redis key丢失是什么原因?
        • Redis实例是否支持SSL加密传输?
        • 如何修改Redis实例的SSL开关?
        • Cluster集群实例容量和性能未达到瓶颈,但某个分片容量或性能已过载是什么原因?
        • 不同编程语言如何使用Cluster集群客户端?
        • Proxy集群使用多DB的方法和限制
        • 控制台操作
        • 控制台操作常见问题
        • 实例类型有哪些?
        • 网络与连接
        • 网络与连接常见问题
        • 如何检测弹性云主机与Redis之间的网络连接?
        • Redis连接失败问题排查和解决
        • 如何使用Redis-desktop-manager访问Redis实例?
        • 如何配置安全组?
        • 如何使用telnet命令检测Redis端口连通性?
        • 使用Redis实例的发布订阅(pubsub)有哪些注意事项?
        • 如何解决Lettuce 6.x版本客户端鉴权错误问题?
        • 如何开启ipv6访问实例?
        • 扩容与类型变更
        • 主从切换
        • 监控告警
        • Redis命令
        • 大Key/热Key分析/过期Key扫描
        • 相关协议
        • 天翼云分布式缓存服务协议
          无相关产品

          本页目录

          帮助中心分布式缓存服务Redis版最佳实践Redis使用规范
          Redis使用规范
          更新时间 2024-11-11 10:19:25
          • 新浪微博
          • 微信
            扫码分享
          • 复制链接
          最近更新时间: 2024-11-11 10:19:25
          分享文章
          • 新浪微博
          • 微信
            扫码分享
          • 复制链接
          本节主要介绍Redis常见使用规范,包括业务使用规范、SDK使用规范等

          业务使用规范

          规范 规范说明 级别 备注
          业务数据分离 防止由于Redis故障或不可用影响所有相关业务收到干扰 建议 业务数据分离,避免多个应用使用一个Redis实例,不相干的业务拆分,公共数据做服务化
          完善redis的容错处理 缓存可能会遇到基础设施的故障或主备切换,应用需要对可能的故障和慢请求做容错处理。 建议 缓存访问失败时,具备降级措施,从DB获取数据;或者具备容灾措施,自动切换到另一个Redis使用;
          避免redis内存使用量超过80% 避云主机会有一定的内存冗余,但是redis内存过高时,redis全量持久化时引入的COPY-ON-WRITE机制带来额外的内存消耗,再加上大内存带来的内存碎片和云主机相关的管理进程消耗,容易触发操作系统OOM KILL 强制 建议及时做扩容处理
          防止缓存击穿 防止缓存击穿,推荐搭配本地缓存使用Redis,对于热点数据建立本地缓存。本地缓存数据使用异步方式进行刷新 建议 -
          就近部署业务 避免网络延迟将极大影响读写性能,如果对于时延较为敏感,请避免使用跨AZ Redis实例 建议 -
          不当成消息队列 发布订阅场景下,不建议作为消息队列使用。redis的PUB/SUB支持的性能有限。 强制 如果需要消息队列,建议改用kafka或rabbitmq

          Key名称的使用规范

          规范 规范说明 级别 备注
          使用统一的命名规范 一般使用业务名(或数据库名)为前缀,用冒号分隔 建议 例如,业务名:表名:id
          控制key名称的长度 在保证语义清晰的情况下,Key的长度越短越好。有些常用单词可使用缩写 建议 例如,user缩写为u,messages缩写为msg。建议长度不超过128字节。
          名称中不要包含特殊字符 禁止包含特殊字符,如空格、换行、单双引号、中文或其他转义字符 强制 大括号({})为Redis的hash tag语义,如果使用cluster集群实例, KEY名称需要正确使用,避免引发数据倾斜,数据都分在同一个SLOT上。

          Value值的使用规范

          规范规范说明级别备注
          要避免大Key、热Key大Key会带来网卡流量风暴和慢查询,要避免出现大Key和热KEY强制一般string类型控制在10KB以内,hash、list、set、zset元素个数不要超过1000
          选择合适的数据类选择合适的数据类型能够节省内存、带宽和提升性能。建议比如存储用户的信息,可用使用多个key,使用set u:1:name "X"、set u:1:age 20这样存储,也可以使用hash数据结构,存储成1个key,设置用户属性时使用hmset一次设置多个,同时这样存储也能节省内存
          设置合理的过期时间最好是过期时间打散,不要集中在某个时间点过期。建议避免Redis因为处理大量过期KEY导致CPU使用率飙高导致性能不稳定。

          Redis命令的常用规范

          规范规范说明级别备注
          小心使用时间复杂度为O(N)的命令对于时间复杂度为O(N)的命令如果N值较大,可能会导致Redis执行过慢,影响整体性能和稳定性强制例如:hgetall、lrange、smembers、zrange、sinter这些命令都是做全集操作,如果元素很多,是很耗性能的可使用hscan、sscan、zscan这些分批扫描的命令替代
          命令禁用部分命令是禁止使用的,需要最好提早了解清楚强制使用前,请参考Redis命令兼容性和WebCli命令兼容性
          慎重使用selectRedis多数据库支持较弱,多业务用多数据库实际还是单线程处理,会有干扰建议需要多DB的场合,建议拆分多个redis使用 CLUSTER集群实例不支持多DB
          批量操作如果有批量操作,可使用mget、mset或pipeline,提高效率,但要注意控制一次批量操作的元素个数免得导致执行过慢,占用Redis过多的资源建议如果有批量操作,可使用mget、mset或pipeline,提高效率,但要注意控制一次批量操作的元素个数mget、mset和pipeline的区别如下:
          • mget和mset是原子操作,pipeline是非原子操作

          • pipeline可以打包不同的命令,mget和mset做不到

          • 使用pipeline,需要客户端和服务端同时支持

          lua脚本执行耗时lua脚本的执行超时时间为5秒钟,建议不要在lua脚本中使用比较耗时的代码强制比如长时间的sleep、大的循环等语句
          避免在lua脚本中使用随机函数调用lua脚本时,建议不要使用随机函数去指定key,否则在主备节点上执行结果不一致,从而导致主备节点数据不一致强制-
          遵循CLUSTER集群实例使用lua的限制遵循CLUSTER集群实例使用lua的限制强制cluster集群实例使用lua有如下限制:
          • 使用EVAL和EVALSHA命令时,命令参数中必须带有至少1个key,否则客户端会提示“ERR eval/evalsha numkeys must be bigger than zero in redis cluster mode”的错误

          • 使用EVAL和EVALSHA命令时,cluster集群实例使用第一个key来计算slot,用户代码需要保证操作的key是在同一个slot

          不要直接使用del命令删除大Key删除大Key时,不要直接使用del命令因为del命令是阻塞的,也会同时阻塞其他客户端请求无法正常执行强制

          Redis 4.0后的版本可以通过UNLINK命令安全地删除大Key,该命令是异步非阻塞

          对于 4.0之前的版本:

          • 如果是Hash类型的大Key,推荐使用hscan + hdel

          • 如果是List类型的大Key,推荐使用ltrim

          • 如果是Set类型的大Key,推荐使用sscan + srem

          • 如果是SortedSet类型的大Key,推荐使用zscan + zrem

          的

          控制pipeline命令个数使用Pipeline时,建议不要一次太多命令因为会占用大量Redis资源和执行时间较长,可能会卡住其他请求无法执行建议单次建议不超过100,同时也需要考虑实际元素字节数大小情况
          合理使用发布订阅命令不建议将 Redis 当作消息队列使用Redis 当作消息队列使用,会有容量、网络、效率、功能方面的多种问题建议如需要消息队列,可使用高吞吐的Kafka或者高可靠的RabbitMQ
          Redis事务限制Redis事务是不支持回滚的如果事务在中途某个命令失败了,那么前面的命令依然会执行成功建议-

          SDK使用规范

          规范规范说明等级备注
          使用连接池+长连接短连接性能差,建议使用连接池+长连接,可以有效控制连接,同时提高效率建议推荐使用JedisPool或者JedisCluster连接实例。
          避免使用Lettuce客户端Jedis客户端在面对连接异常,网络抖动等场景下的异常处理和检测能力明显强于Lettuce,可靠性更强建议建议使用Jedis
          客户端需要对可能的故障和慢请求做容错处理由于Redis服务可能因网络波动或基础设置故障的影响,引发主备切换、命令超时或慢请求等现象,需要在客户端内设计合理的容错重试机制强制-
          合理设置重试时间和次数根据业务要求合理设置容错处理的重试时间和次数,避免不合适的设置导致对服务的可用性收到影响强制
          • 如果超时重试时间设置的非常短,可能引发重试风暴,极易引发业务层雪崩

          • 如果重试时间设置得较长或者重试次数设置得较大,则可能导致在主备倒换情况下业务恢复较慢

          运维管理规范

          规范规范说明等级备注
          开启密码登录生产环境需要开启Redis密码登录验证强制-
          验证业务的故障处理能力或容灾逻辑在测试环境或者预生产环境中组织演练,验证在Redis主备切换、宕机或者扩缩容场景下业务的可靠性建议-
          监控实践关注Redis负载,在过载前提前扩容强制根据告警基线配置告警:配置节点cpu、内存、带宽等告警
          检查各个节点的内存使用率例行检查各个节点的内存使用率,查看主节点内存使用率是否有不均衡的状态建议内存使用率不均衡说明存在大Key问题,需要进行大Key拆分及优化
          开启热Key分析开启热Key例行分析,并分析是否有Key频繁调用建议-
          Redis慢日志例行巡检Redis慢日志命令建议分析慢日志,并尽快从业务上进行修复
          文档反馈

          建议您登录后反馈,可在建议与反馈里查看问题处理进度

          鼠标选中文档,精准反馈问题

          选中存在疑惑的内容,即可快速反馈问题,我们会跟进处理

          知道了

          上一篇 :  最佳实践
          下一篇 :  秒杀库存控制
          搜索 关闭
          ©2025 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
          公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
          备案 京公网安备11010802043424号 京ICP备 2021034386号
          ©2025天翼云科技有限公司版权所有
          京ICP备 2021034386号
          备案 京公网安备11010802043424号
          增值电信业务经营许可证A2.B1.B2-20090001
          用户协议 隐私政策 法律声明