快速了解redis,个人笔记

更多个人笔记:(仅供参考,非盈利)

gitee: https://gitee.com/harryhack/it_note

github: https://github.com/ZHLOVEYY/IT_note

  • (基于mac展示,别的可以参考)接下来将直接通过案例进行学习
  • 其实redis并不是主要学习的中心,还是要基于语言进行学习掌握实现不同的模式和用法,redis-cli主要是辅助和调试,知道基本的功能就行

简单了解概念

简单几条快速了解

  • 属于非关系型数据库,no-sql
  • redis用于缓解频繁访问sql带来的性能问题。redis性能高/
  • 操作redis访问包括:CLI,API,GUI 三种方式访问
  • 涵盖的数据类型包括:字符串,列表,集合,哈希,消息队列,位图,有序集合等
  • 支持数据持久化,主从复制,哨兵模式等高可用特性

安装

这方面我用的是mac,直接homebrew 下载redis就可以了。这方面大伙稍微搜一下就有,下载很方便的

后面的展示也是基于mac

UI界面有一个叫"redisinsight"的,不过本着无非必要,勿增实体的想法,等发现确实有需要了再看看,基本的用终端操作就可以的

基础操作

bash 复制代码
redis-server # 启动服务
redis-cli   # 启动客户端

# string
set user1 "Alice" # 设置键值对
get user1
setex session1 10 "token123" # 设置有时间限制的键值对
TTL session1 # 查看剩余的时间,可以多尝试几次
DEL user1 # 删除特定的键
get user1 # 发现是nil
DEL user # 我们没有设置过user,对比发现上面DEL输出1,这里输出0,可以理解成操作是否执行成功

# 操作Hash
HSET user2 name "Bob" age 30 # 返回值表示​​成功新增的字段数量​​(不包括被覆盖的已有字段) 这里会返回2   integer通常用于表示命令执行后影响的数据数量或状态变化​
HGET user2 name # "bob"
HGET user2 age  # "30"
HGETALL user2

# 操作List
RPUSH message_queue "msg1" "msg2" "msg3" # 推入消息
LPOP message_queue # 弹出消息,msg1
LRANGE message_queue 0 -1 # 查看队列所有元素

# 操作set
SADD myset "apple" "banana" "apple" # 添加元素,自动去重
SMEMBERS myset # 查看集合

# 操作soeted Set
ZADD leaderboard 100 "player1" 200 "player2" # 添加带分数的元素
ZRANGE leaderboard 0 -1 WITHSCORES # 连着分数一起列出

redis 的键值对都是二进制安全的,所以设置数字,bool等也都会转为字符串的形式输出

可以发现其实redis主要就是对于主流的数据结构类型进行操作,简单了解后发现后面的使用是直接有需要查就可以的。主要还是要基于自己的语言进行学习

相关推荐
是隼人29 分钟前
buuctf-pwn xdctf2015_pwn200题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
jike_20261 小时前
iPhone采访录音同时拍现场照片的APP:图片音频同步记录实测
笔记·智能手机·音视频·语音识别
大衛說1 小时前
《Python 从入门到精通》系列总览与学习路线
开发语言·python·学习
软件聚导航2 小时前
「聚小软 AI 助手」技术升级:从数据库检索到 RAG 知识库问答
前端·数据库·mysql·微信小程序·小程序·ai编程·rag
吃好睡好便好2 小时前
查找函数的使用
学习·算法·matlab·生活·查找函数
学习星球2 小时前
单调栈——从“找下一个更大的“到柱状图中的最大矩形
数据库·c++·算法·leetcode·xcode
学运维的Kysan2 小时前
暑假运维学习打卡第二十九天8.29
学习
————A2 小时前
Agent 接收用户上传文件
人工智能·笔记·python·状态模式
奔跑的痕迹2 小时前
如何删除引力画报?
笔记
zbyyd3 小时前
Linux 进程间通信学习笔记
linux·笔记·学习