快速了解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主要就是对于主流的数据结构类型进行操作,简单了解后发现后面的使用是直接有需要查就可以的。主要还是要基于自己的语言进行学习

相关推荐
qzhqbb11 小时前
神经网络—— 学习与感知器(细节补充)
神经网络·学习
风暴之零12 小时前
卡尔曼滤波学习
人工智能·学习·机器学习
资深web全栈开发13 小时前
如何正确使用缓存:常见陷阱与最佳实践
redis·缓存·golang
2401_8603195213 小时前
【无标题】
开发语言·学习·rust
春风霓裳14 小时前
sql-窗口函数
大数据·数据库·sql
言之。14 小时前
【数据库】TiDB 技术选型与架构分析报告
数据库·架构·tidb
深圳佛手14 小时前
操作系统的 页缓存(Page Cache)解析
缓存
Nebula_g14 小时前
C语言应用实例:解方程(二分查找)
c语言·开发语言·学习·算法·二分查找·基础
人工智能训练14 小时前
如何在 Ubuntu 22.04 中安装 Docker 引擎和 Linux 版 Docker Desktop 桌面软件
linux·运维·服务器·数据库·ubuntu·docker·ai编程
好望角雾眠14 小时前
第四阶段C#通讯开发-5:TCP
网络·笔记·网络协议·tcp/ip·c#