key的命名建议
redis单个key 存入512M大小
1.key不要太长,尽量不要超过1024字节,这不仅消耗内存,而且会降低查找的效率;
2.key也不要太短,太短的话,key的可读性会降低;
3.在一个项目中,key最好使用统一的命名模式,例如user:123:password;
4.key名称区分大小写
1. 简介
string是redis最基本的类型,一个key对应一个value。
string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。
string类型是Redis最基本的数据类型,一个键最大能存储512MB。
二进制安全是指,在传输数据时,保证二进制数据的信息安全,也就是不被篡改、破译等,如果被攻击,能够及时检测出来
二进制安全特点:
1、编码、解码发生在客户端完成,执行效率高
2、不需要频繁的编解码,不会出现乱码
2. String命令
赋值语法:
1  | SET KEY VALUE  | 
Redis SET 命令用于设置给定 key 的值。如果 key 已经存储值, SET 就覆写旧值,且无视类型
1  | SETNX key value //解决分布式锁 方案之一  | 
只有在 key 不存在时设置 key 的值。Setnx(SET if Not exists) 命令在指定的 key 不存在时,为 key 设置指定的值
1  | MSET key1 value1 key2 value2 ...  | 
同时设置一个或多个 key-value 对
取值语法:
1  | GET KEY_NAME  | 
Redis GET命令用于获取指定 key 的值。如果 key 不存在,返回 nil 。如果key 储存的值不是字符串类型,返回一个错误。
1  | GETRANGE key start end  | 
用于获取存储在指定 key 中字符串的子字符串。字符串的截取范围由 start 和 end 两个偏移量决定(包括 start 和 end 在内)
1  | GETBIT key offset  | 
对 key 所储存的字符串值,获取指定偏移量上的位(bit)
1  | MGET key1 [key2..]  | 
获取所有(一个或多个)给定 key 的值
1  | GETSET KEY_NAME VALUE  | 
Getset 命令用于设置指定 key 的值,并返回 key 的旧值,当 key 不存在时,返回 nil
1  | STRLEN key  | 
返回 key 所储存的字符串值的长度
删除语法:
1  | DEL KEY_Name  | 
删除指定的KEY,如果存在,返回值数字类型。
自增/自减:
1  | INCR KEY_Name  | 
Incr 命令将 key 中储存的数字值增1。如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 INCR 操作
自增:
1  | INCRBY KEY_Name 增量值  | 
Incrby 命令将 key 中储存的数字加上指定的增量值
自减:
1  | DECR KEY_NAME 或 DECYBY KEY_NAME 减值  | 
decR 命令将 key 中储存的数字减1
字符串拼接:
1  | APPEND KEY_NAME VALUE  | 
Append 命令用于为指定的 key 追加至未尾,如果不存在,为其赋值
3.扩展操作
设置数据有指定的生命周期
1  | setex key seconds value  |