redis基本数据类型之String
一、基础Api使用
1 set key value 2 例子: 3 如果当前key 不存在 那么久设置key 如果存在就不会更改 4 set zhang san 5 如果修改 6 set zhang li 7 这时候key变 值会被修改 8 9 setnx key value 10 只有key不存在使用才会执行添加操作 ,如果key存在就不会执行 11 例如: 12 setnx li si 记过为 si 13 再次执行 setnx li wu 则不会执行 14 但是可以通过set li wu 这样修改 15 16 setex key time value 17 time 过期时间 单位秒(s) 18 例如 set li 30 si 结果会30秒后当前key被删除 19 相当于set key value 20 expire key 30 两个操作的整合 21 22 23 psetex key time value 24 time 过期时间 单位毫秒 25 例如 psetex liu 300 wei 结果300毫秒就会删除 26 27 mset key value key1 value1 key2 value2... 28 可以批量设置值 29 30 get key 31 通过key 后去值 32 33 mget 批量获取 34 例如 mget liu li (key1 ...keyn) 35 可以批量获取到多个值 36 37 getset key value 38 设置当前的 key value 并且返回原有的value 原有值被修改 如果开始没有返回nil 39 40 getrange key start end 41 start 值得开始位置下表 42 end 结束位置下标 43 例如: 44 set liu wei 45 getrange liu 0 1 46 返回结果是w 其实就是对结果集截取 47 48 49 setrang key offset value 50 offset 要替换值某一位置下标 51 例如 52 set liu wei 53 setrange liu 1 r 54 结果 wri 55 56 57 setbit key offset value 58 对key 对应的值得二进制标识位进行操作 59 offset 位的索引(将值变成二进制之后进行索引) 60 value 值只能是1 或0 61 例如: set liu wei 62 setbit liu 63 64 65 strlen key 66 获取value长度 67 68 incr k 69 当k对应的是数值 增量加一 70 例如: 71 set k1 1 72 incr k1 73 get k1 结果是2 74 75 incrby key increment 76 当key对应的数值 77 set key 1 78 incrby key 4 79 get key 返回结果是5 80 81 82 decr key 83 当key 对应的值为数值时候 84 set key 2 85 decr key 86 get key 返回结果是1 87 88 89 decrby key decrement 90 当key对应的值是数值 91 set key 4 92 decr key 2 93 get key 返回结果是2 94 95 append key value 96 追加操作 对已经有的值进行后面追加返回长度 97 set key v 98 append key 1 返回结果 2 99 get key 返回结果是v1
String 字符串有三种数据类型
字符串 整数 浮点
场景:
1、页面动态缓存
后端生成的数据页面 存储到redis字符串中 特点首次访问慢以后从redis中获取快
2)数据缓存
我们的字典数据比如地区数据 我们可以把转为json字符串的形式保存到redis中
3)网站统计
文件的下载个数 网站访问量 (incr decr 自增自减来控制)
4)共享session
当我们采用分布式的时候 由于每一个服务器的都存在自己的session那面我们这时候就需要session共享采用redis
5)时间内限流
短信登录验证 我们可以设置5分钟发送一次 我们可以将用户id存储在redis中 设置过期时间为5分钟