Redis in action
1 类型
| 类型 | 存储格式 |
| STRING | 字符串、整数或浮点数 |
| LIST | 链表 |
| SET | 无序集合 |
| HASH | 无序散列表 |
| ZSET | 有序映射 |
1.1 STRING
存储类型:byte string, int, float 常用命令:GET, SET, DEL, INCR, DECR, INCRBY, DECRBY, INCRBYFLOAT 其他命令:APPEND, GETRANGE, SETRANGE, GETBIT, SETBIT, BITCOUNT, BITOP
1.2 LIST
常用命令:LPUSH/RPUSH, LPOP/RPOP, LRANGE, LINDEX, LTRIM 其他命令:RPOLPUSH, BLPOP, BRPOP, BRPOPLPUSH; B 开头为阻塞式调用
1.3 SET
常用命令:SADD, SREM, SISMEMBER, SMEMBERS 其他命令:
| SCARD | 返回元素数量 |
| SRANDMEMBER | 随机返回一个或多个元素,count 参数控制随机元素是否可重复 |
| SPOP | 随机移除并返回一个元素 |
| SMOVE | SMOVE source-set dest-set item |
集合命令:SDIFF, SDIFFSTORE, SINTER, SUNION, SUNIONSTORE
1.4 HASH
常用命令:HSET/HMSET, HGET/HMGET, HDEL, HLEN 其他命令:HEXISTS, HKEYS, HVALS, HGETALL, HINCRBY, HINCRBYFLOAT
1.5 ZSET
常用命令:ZADD, ZREM, ZCARD 其他命令:ZINCRBY, ZINTERSTORE, ZCOUNT, ZSCORE, 范围获取/删除命令:ZRANGE/ZREVRANGE, ZRANK/ZREVRANK, ZRANGEBYSCORE/ZREVRANGEBYSCORE, ZREMRANGEBYRANK, ZREMRANGEBYSCORE 集合命令:ZINTERSTORE, ZUNIONSTORE; 可指定 score 的运算方式
2 命令
2.1 通用命令
2.1.1 SORT
SORT cource-key [BY pattern] [LIMIT offset count] [GET pattern [GET pattern …]] [ASC|DESC] [ALPHA] [STORE dest-key]
2.1.2 Basic transaction
WATCH, MULTI, EXEC, UNWATCH, DISCARD. 事务可以通过减少客户端和服务端之间的通信次数提升性能
2.1.3 Expire time
| PERSIST | PERSIST key-name 移除键过期时间 |
| TTL | TTL key-name 查看距离过期剩余多少秒 |
| EXPIRE | EXPIRE key-name seconds |
| EXPIREAT | EXPIREAT key-name timestamp |
| PTTL | PTTL key-name 同 TTL,单位毫秒 |
| PEXPIRE | 毫秒级 PEXPIRE |
| PEXPIREAT | 毫秒级 EXPIREAT |
2.2 发布订阅
| SUBSCRIBE | SUBSCRIBE channel [channel …] 订阅单个或多个频道 |
| UNSUBSCRIBE | UNSUBSCRIBE channel [channel …] |
| PUBLISH | PUBLISH channel message |
| PSUBSCRIBE | PSUBSCRIBE pattern [pattern …] |
| PUNSUBSCRIBE | PUNSUBSCRIBE pattern [pattern …] |