陈奇网络工作室

Redis的数据类型以及每种数据类型的使用场景

云计算

人是很奇怪的动物,简单的问题往往会被大家忽略。当我们使用分布式缓存Redis时,一个最简单的问题经常被忽略。Redis的数据类型有哪些,每种数据类型的使用场景是什么?

你觉得这个问题很基础吗?我也有同感。但是根据调查经验,至少有80%的人回答不了这个问题。

基本上,一个合格的程序员可以使用所有五种类型。

1.线

这个没什么好说的。对于最常见的set/get操作,该值可以是字符串或数字。一般做一些复杂的计数功能缓存。

2.混杂

这里Value存储结构化对象,操作其中一个字段很方便。

我做单点登录的时候用这个数据结构存储用户信息,以CookieId为Key,设置30分钟为缓存过期时间,可以很好的模拟类似Session的效果。

3.目录

利用List的数据结构,可以做简单的消息队列功能。还有一个就是可以使用lrange命令来做基于Redis的分页功能,性能非常出色,用户体验也很好。

4.一组

因为Set堆积了一组不重复的值。因此,您可以执行全局重复数据消除功能。为什么不使用JVM自己的集合来进行重复数据删除?

因为我们的系统通常部署在集群中,所以使用JVM附带的集合很麻烦。为一个做全局重复数据删除,重新启动公共服务,是不是太麻烦了?

此外,您可以通过使用交集、并集和差集等运算来计算公共首选项、所有首选项和您自己的唯一首选项。

5.排序集合

有序集合有一个权重参数得分,集合中的元素可以按得分排列。

可以做排行榜应用,拿前N操作。有序集合可以用来做延迟任务。最后一个应用是你可以做范围搜索。

如果你对Redis有什么深入的研究,欢迎在华为云官方论坛发帖,共同探讨。也可以去华为云帮助中心看我们详细的操作说明。

更多关于云服务器,域名注册,虚拟主机的问题,请访问西部数码代理官网:www.chenqinet.cn。

后台-系统设置-扩展变量-手机广告位-内容页底部广告位3