Redis教程

Redis中key的设计与管理(利用枚举)

本文主要是介绍Redis中key的设计与管理(利用枚举),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一、redis 中 key 设计原则

唯一、可读、灵活、失效

  • 唯一,比如注册验证码,需要加上 register_verify_code 作为唯一标识
  • 可读,见名知意
  • 灵活,比如攻略文章点赞的设计,可以带上用户id,攻略文章id,strategy_thumbsupnum_vo:uid:sid
  • 失效,缓存用完应该清理

二、枚举redis key 管理类

约定:一个枚举实例,对应着一个 redis 的 key

枚举核心特点

  • 枚举类构造器是私有的

  • 枚举类定义完成,它的实例个数固定

  • 其他操作跟普通类差不多

demo

@Getter
public enum RedisKey {

    REGISTER_VERIFY_CODE("verify_code:", Consts.VERIFY_CODE_VAI_TIME*60L); // 验证码

    private String prefix; // key前缀
    private Long time; // redis 存活时间

    RedisKey(String prefix, Long time) {
        this.prefix = prefix;
        this.time = time;
    }

    //拼接出完整redis的key
    public String join(String... values){
        StringBuilder sb = new StringBuilder(80);
        sb.append(this.prefix);
        for (String value : values) {
            sb.append(":").append(value);
        }
        return sb.toString();
    }
}
这篇关于Redis中key的设计与管理(利用枚举)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!