根据Redis根据不同的数据结构存在如下应用:
- 使用字符串键来实现缓存
- 使用集合实现商品的筛选(差并交集操作)
- 使用列表实现消息队列
- 使用有序集合实现排行榜
- 使用发布订阅实现直播间
- ......
一.字符串键
1.利用Redis可以存储二进制数据 (图片缓存)
2.利用Redis可以存储数字并且存在相关自增操作(计数器)(Id生成器)
3.二进制数据的位1统计bitcount (快速统计在线人数)
二.散列键
1.散列实际使用
实际情况下,由于Redis在创建键的时候会消耗大量内存资源(创建的键会包含数据库附加的管理信息----比如:键的内存,最后一次访问时间等...),因此只要有可能就尽量使用散列键而不是字符串键来存储键值对数据,因为散列键管理方便,能够避免键名冲突,并且还能够节约内存。
三.列表键
1.列表的有序性
由于列表存在有序性,并且Redis对其有大量操作命令支持
四.集合键
1.集合存在无序性且唯一性
2.Redis可以随机的从集合中取出一个元素
3. Redis对其存在相关集合运算(交,并,差集)
五.有序集合
1.有序集合每个元素带有分值,并且可以根据指定分值规则排序,并且可以在指定分支范围内排序
2.集合运算
六. HyperLogLog集合基数估算(不占用内存)
HyperLogLog的优点是,即使输入元素的数量或体积非常大,计算基数所需的空间总是固定的,并且是非常小的
七.键过期功能
八.发布订阅功能
1.发布者,订阅者,订阅频道,订阅模式