Redis之Hash
Hash描述
1、Hash和PHP的数组非常相似;
2、最多可以存2^32 -1个数据;
3、可以保存多个key-value键值对,每个K-V都是字符串类型;
4、其实就是一个属性下面有好多的子属性,比如每个用户下面有名称、性别、电话,这些属性都是用户的子属性。
Hash的基本操作
利用laravel封装常用的操作
设置对应的键值
arr是一个数组,设置的时候通过数组,一次性可以设置多个或一个很方便。
获取对应的键值
通过数组,数组为空直接获取全部,有值就获取对应的值;
对特定的字段进行增值
比如他可以用来设置用户的粉丝数、关注数、访问的次数;
获取对应键的长度
这个其实是在获取对应键子属性的个数。
适用场景
1、比如我们会员的资料就可以放在缓存里面,键就是会员的唯一标识,他的子属性就可以是姓名、电话、性别等等;
2、使用一些结构化的数据存储。
总结
1、hash的类型其实就是我们的关联数组,非常易于操作;
2、我们可以精确操作每个属性;
3、在Memcached中,需要修改其中某一项时,通常需要将所有值取出反序列化后,修改某一项的值,再序列化存储回去。这样不仅增大了开销,也不适用于一些可能并发操作的场合,这个时候Redis比Memcached的性能要强。