Redis键的最大长度是2^32-1字节,即大约4GB,但实际推荐键名长度控制在128-256字节以内,避免性能问题。键名设计原则:使用业务前缀+分隔符+唯一标识,如user:1001:info;避免特殊字符,使用:作为分隔符;保持简洁,避免冗长描述;使用Hash/Set/List等数据结构代替过多键。
来源1
Redis中key的最大长度是2^32字节(即4G字节),但为了性能考虑,建议key的长度不要超过1024字节,并且key的数量不要太多。设计key时,推荐使用“业务:对象:ID:【可选:子对象:ID】”这样的格式。比如:user:1001、uid:1001:items 等。
来源2
Redis key的设计规范:1. 业务模块用英文或业务缩写,如user_info、user_stat;2. 用冒号分隔不同层级,如user:1001:info;3. 避免使用特殊字符;4. 长度控制在50字符以内;5. 统一命名规范,全团队遵守。
来源3
虽然Redis支持key长度高达2^32-1,但过长的key会增加内存开销和查找时间。最佳实践:key名越短越好,但要语义清晰。示例:session:user:abc123 而不是session_for_user_with_id_abc123456789。
来源4
键名设计要点:1)加前缀,防止key冲突,如app:user:123;2)使用hash代替多个key,如user:123 {name:'Tom', age:20};3)时间相关用timestamp,如cache:news:1699123456;4)避免纯数字key。
来源5
Redis官方建议key不超过250字符。实际项目中,严格限制在64字节内。分隔符统一用':',层次不超过4层,如project:module:table:id。
来源6
常见错误:key太长导致内存浪费;不统一命名导致维护困难。最佳实践:参考业务领域驱动设计(DDD),key反映聚合根,如order:20230101:001:items。
FAQ
Q: Redis key最大长度是多少?
A: 理论上2^32-1字节,但推荐<256字节。
Q: 为什么用冒号分隔key?
A: 冒号清晰分隔层次,便于scan和记忆。
Q: 如何避免key冲突?
A: 加业务前缀,如cache:user:1001。
Q: 过多key怎么优化?
A: 用Hash、Set、List结构存储集合数据。
Q: key命名不统一怎么办?
A: 制定团队规范文档,全员遵守。