Hash常用操作
HSET key field value //存储一个哈希表key的键值
HSETNX key field value //存储一个不存在的哈希表key的键值
HMSET key field value [field value ..] //在一个哈希表key中存储多个键值对
HGET key field //获取哈希表key对应的field键值
HMGET key field [field ..] //批量获取哈希表key中多个field键值
HDEL key field [field .. //删除哈希表key中的field键值
HLEN key //返回哈希表key中field的数量
HGETALL key //返回哈希表key中所有的键值
HINCRBY key field increment //为哈希表key中field键的值加上增量increment
对象缓存
HMSET user {userld}:name zhuge {userld}:balabce 1888
HMSET user 1:name zhuge 1:balabce 1888
HMGET user 1:name 1:balabce
![](https://img.haomeiwen.com/i18057295/accb963744ebee4f.png)
电商购物车
- 1)以用户id为key
- 2)商品id为field
- 3)商品数量为value
购物车操作
- 1)添加商品>hset cart:1001 10088 1
- 2)增加数量hincrby cart:1001 10088 1
- 3)商品总数>hlen cart:1001
- 4)删除商品>hdel cart:1001 10088
-
5)获取购物车所有商品>hgetall cart:1001
购物车解释
优点
1)同类数据归类整合储存,方便数据管理
2)相比string操作消耗内存与cpu更小
3)相比string储存更节省空间
缺点
1)过期功能不能使用在field上,只能用在key上
2) Redis集群架构下不适合大规模使用(解析在下面)
redis 集群架构
![](https://img.haomeiwen.com/i18057295/3ddfca1f91b4c768.png)
网友评论