Redis基础知识其实没那么难,跟着我慢慢捋一捋Redis那些最重要的东西
- 问答
- 2026-01-11 14:00:04
- 3
基于常见的Redis入门教程和核心概念整理)
Redis基础知识其实没那么难,跟着我慢慢捋一捋Redis那些最重要的东西。
我们得知道Redis到底是什么,你可以把它想象成一个速度超级快的“大本子”或者“备忘录”,这个本子放在你的服务器内存里,因为数据都存在内存里,所以它读写的速度比我们平常那种存在硬盘上的数据库(比如MySQL)要快得多,快到什么程度呢?一秒钟能处理几十万次的请求,为了防止服务器重启或者断电导致这个“本子”上的内容全部丢失,Redis也支持把数据定期“抄写”一份到硬盘上,这样就能持久保存了。
那Redis主要用来干嘛呢?它最经典的几个用处是这样的:
-
当缓存用:这是它最最常见的角色,比如你的网站首页每次打开都要从很慢的数据库里查很多数据,用户一多数据库就撑不住了,这时候就可以用Redis,先把首页需要的数据在Redis里存一份,下次用户再来访问,直接从速度飞快的Redis里拿数据,网站瞬间就打开了,大大减轻了后方数据库的压力。
-
当临时储物柜用:比如电商网站里的购物车信息,用户可能加了好多商品但还没决定买,这些临时数据存数据库不太划算,放在Redis里就特别合适,可以设置一个过期时间,比如7天后用户还没买就自动清空。
-
支持一些特殊功能:因为它速度快而且数据结构丰富,还能用来做简单的消息队列(比如一个系统通知另一个系统去干活)、做排行榜(因为它有能排序的数据结构)、做计数器(比如统计文章的阅读量,可以飞快地增加)等等。
了解了Redis是干啥的,接下来最关键的就是理解它的“数据结构”了,这是Redis的灵魂所在,也是它比很多其他简单缓存强大的地方,Redis不是简单地只能存字符串,它支持好几种结构,每种结构都对应解决一类问题:
- String(字符串):这是最基本的数据类型,就是键值对,你可以存一个用户的昵称,存一个验证码,也可以存一个计数器(比如文章点赞数,可以让它自动加1)。
- Hash(哈希):这个很像我们编程语言里的“对象”或者“字典”,它特别适合存一个对象的多个字段,比如存一个用户的信息,这个用户的ID是键,然后这个键对应的值里面,又可以存这个用户的姓名、年龄、城市等多个字段,这样你取用户信息的时候,可以一次性拿到所有字段,非常方便。
- List(列表):就是一个简单的字符串列表,按顺序排列,它的特点是可以在列表的头部(左边)或者尾部(右边)添加、取出元素,这就能干很多事,比如可以做消息队列(一边往里放消息,另一边取消息),也可以存一个用户最新的动态列表(只保留最新的20条)。
- Set(集合):集合的特点是里面的元素都是唯一的,不允许重复,而且内部是无序的,它最大的用处就是做“交集、并集、差集”这些操作,你可以用两个集合分别存一个用户的所有好友和另一个用户的所有好友,然后很容易就能算出他们的共同好友是谁。
- Sorted Set(有序集合):这是Set的升级版,它给集合里的每个元素都关联了一个分数(score),然后可以根据这个分数进行排序,这简直就是为“排行榜”量身定做的,比如你要做游戏积分榜,玩家的ID是元素,他的积分就是分数,Redis会自动帮你按积分从高到低排好序。
再提两个重要的概念,一个是持久化,前面说了Redis数据主要在内存里,持久化就是把内存数据存到硬盘防止丢失的机制,主要有两种方式:RDB(像拍快照,定期全量备份)和AOF(像写日记,记录每一次写操作),另一个是过期时间,这是Redis一个非常实用的功能,你可以给任何一个键设置一个存活时间,比如短信验证码设置60秒过期,时间一到,Redis就会自动把这个键删掉,省去了你手动清理的麻烦。
你看,这么一捋,Redis的核心是不是就清晰多了?它就是一个速度快、数据结构丰富、能当缓存也能当多种工具用的内存数据库,先掌握这些最重要的点,再去深入细节,就会觉得轻松很多了。

本文由帖慧艳于2026-01-11发表在笙亿网络策划,如有疑问,请联系我们。
本文链接:http://waw.haoid.cn/wenda/78723.html