高端的网站建设怎么做,深圳软件项目定制开发费用,深圳个人形象设计,DANI主题wordpress文章目录 ⛄String 介绍⛄命令⛄对应 RedisTemplate API⛄应用场景 ⛄String 介绍 String 类型#xff0c;也就是字符串类型#xff0c;是Redis中最简单的存储类型。
其value是字符串#xff0c;不过根据字符串的格式不同#xff0c;又可以分为3类#xff1a; ● string也就是字符串类型是Redis中最简单的存储类型。
其value是字符串不过根据字符串的格式不同又可以分为3类 ● string普通字符串 ● int整数类型可以做自增.自减操作 ● float浮点类型可以做自增.自减操作
不管是哪种格式底层都是字节数组形式存储只不过是编码方式不同。字符串类型的最大空间不能超过 512 MB。 ⛄命令
String的常见命令有 ● SET添加或者修改已经存在的一个 String 类型的键值对 ● GET根据 key 获取 String 类型的 value ● MSET批量添加多个String类型的键值对 ● MGET根据多个 key 获取多个 String 类型的 value ● INCR让一个整型的key自增1 ● INCRBY:让一个整型的 key 自增并指定步长例如incrby num 2 让num值自增2 ● INCRBYFLOAT让一个浮点类型的数字自增并指定步长 ● SETNX添加一个 String 类型的键值对前提是这个 key 不存在否则不执行 ● SETEX添加一个 String 类型的键值对并且指定有效期 ⛄对应 RedisTemplate API
ValueOperations ops redisTemplate.opsForValue();// 单独设置有效期不推荐单独用
ops.expire(StringKey,1,TimeUnit.MINUTES);// 设置值 and 有效期推荐这种
ops.set(key, value, 1, TimeUnit.MINUTES);// 操作数值 增加 减少INCR INCRBY
ops.increment(key, 1);
ops.increment(key, -1);// SETNX SETEX这个key不存在执行 存在则不执行多用于互斥锁
ops.setIfAbsent(key, value, 10, TimeUnit.SECONDS)// 获取缓存值
ops.get(StringKey);⛄应用场景
下面列举了一些Redis String类型的应用场景 缓存使用String保存缓存信息如用户会话状态、web页面片段、数据库查询结果等。 计数器使用incr/decr命令实现对计数器的自增和自减如网站访问量、文件下载次数、商品销售量等。 消息队列使用LPUSH/RPUSH命令实现队列的入队左插入和出队右取出同时使用BLPOP/BRPOP命令进行阻塞式弹出等待的消息。 id生成器使用incr命令实现简单id生成解决分布式系统节点间数据生成的问题。 分布式锁通过SETNX命令结合时间戳或随机字符串等实现互斥锁的获取和释放避免并发写操作时数据的不一致。 商品价格使用String保存商品价格动态更新价格避免价格无法及时调整。 Session共享将session信息以key-value方式保存到redis中并设置过期时间完成session共享功能类似于分布式缓存。