当前位置:首页 > 问答 > 正文

Redis其实没那么难,跟着这教程一步步快速上手试试看吧

你是不是经常听人提起Redis,感觉它是个很高深的技术,只有那些大公司的牛人才能玩转?其实不然,Redis用起来非常简单,甚至比很多你熟悉的数据库都要直观,我们就抛开那些复杂的概念,像朋友聊天一样,一步步来试试Redis到底怎么用。

第一站:Redis到底是什么?我们能用它做什么?

Redis就是一个超级快的“键值对”小仓库,你可以把它想象成一个巨大的、放在内存里的JavaScript对象或者Python字典,它的所有数据都存放在服务器的内存里,所以读写速度飞快,比传统的关系型数据库(比如MySQL)要快得多。

它具体能干啥呢?根据菜鸟教程里的举例,Redis的常见用途包括:

  1. 缓存:这是Redis最经典的用法,比如你的网站首页内容不经常变,每次从数据库查都很慢,你可以把首页数据存一份在Redis里,下次用户访问时,直接从Redis里拿,速度瞬间提升。
  2. 消息队列:系统之间需要传递消息,比如用户下单后要通知发货系统,Redis可以像一个临时的“信箱”,一方往里放消息,另一方按顺序取走处理。
  3. 排行榜:利用Redis可以方便地对分数进行排序的特性,轻松实现游戏排行榜、热门文章列表等。
  4. 计数器:比如统计网站的点击量、文章的阅读数,Redis的命令能保证在高并发下也能准确计数。

第二站:手把手,启动并玩转Redis

理论说多了容易困,我们直接动手,你需要在你的电脑上安装Redis,对于Mac用户,可以用brew install redis命令;Windows用户可以去GitHub下载微软维护的Redis版本,安装过程很简单,这里就不赘述了。

安装好后,打开你的终端(或命令行),输入命令启动Redis服务器:

redis-server

看到那个漂亮的Redis图标和端口号(默认6379)出现,就说明服务启动成功了,别关这个窗口,让它运行着。

我们再打开一个新的终端窗口,输入以下命令来连接上我们刚启动的Redis服务:

redis-cli

你会看到命令提示符变成了 0.0.1:6379>,恭喜你,你已经进入了Redis的“命令行模式”,可以开始“发号施令”了!

第三站:五个核心命令,搞定80%的使用场景

Redis的命令非常直观,基本都是英文单词,我们来试试最常用的几个,你跟着输入就行:

  1. SET:存数据 就像给一个变量赋值,我们存一个键值对,键是my_name,值是“Redis新手”

    SET my_name "Redis新手"

    回车后,Redis会回复一个OK,表示成功了。

  2. GET:取数据 现在我们把刚才存的值取出来看看。

    GET my_name

    回车后,屏幕上就会显示出 "Redis新手",是不是很简单?

  3. DEL:删数据 如果我们不想要这个数据了,可以删除它。

    DEL my_name

    回车后,Redis会返回 (integer) 1,表示成功删除了1个键,你再试试 GET my_name,会得到一个 (nil),意思是“空”,说明数据已经没了。

  4. INCR:让数字加1 Redis很擅长处理数字,我们设置一个计数器。

    SET page_view 10

    现在想给访问量加1,不需要先GET出来再加再SET回去,直接用INCR命令:

    INCR page_view

    Redis会直接返回 (integer) 11,你再GET page_view一下,发现已经变成11了,这个操作是原子性的,意味着即使很多人同时加1,也不会出错,非常适合做计数。

  5. EXPIRE:给数据设置“保质期” 这是Redis一个非常强大的功能,比如我们存了一个手机验证码,希望它5分钟后自动消失,不用手动去删。 先存验证码:

    SET sms_code "123456"

    然后给它设置10秒的过期时间(单位是秒):

    EXPIRE sms_code 10

    等待10秒后,你再输入 GET sms_code,就会发现它已经变成(nil),被自动清理掉了,这在做缓存和临时数据时非常有用。

第四站:一点小小的扩展

除了简单的字符串,Redis还支持其他几种数据结构,比如列表(List)、集合(Set)等,命令也同样直观,你可以用LPUSH往一个列表左边插入元素,用LRANGE来读取列表的一段,当你熟悉了基本操作后,可以去Redis命令参考(比如菜鸟教程上的Redis教程部分)探索更多好玩的功能。

总结一下

看,就这么几步,你已经学会了安装Redis、启动服务、连接客户端,并且使用了最核心的五个命令,Redis入门真的没有想象中那么难对吧?它就像一个反应超快的记事本,你可以随时往里写点东西,随时取出来,还能设置提醒让它到时自动擦掉。

下一步,你可以尝试把它用在你自己的小项目里,比如做一个简单的页面访问计数器,或者缓存一些API的返回结果,亲身感受一下它带来的速度飞跃,实践是最好的老师,大胆去试试吧!技术不是为了吓唬人,而是为了解决问题,Redis就是一个能帮你轻松解决“快”这个问题的好工具。

Redis其实没那么难,跟着这教程一步步快速上手试试看吧