Redis基础与使用 | 青训营笔记

76 阅读2分钟

Redis基础与使用 | 青训营笔记

这是我参与「第三届青训营 -后端场」笔记创作活动的第4篇笔记

1. Redis简单上手

Redis:远程字典服务

  • redis-server:服务端

  • redis-cli:客户端

  • redis-check-aof:持久化检查

  • redis-benchmark:性能测试

测试连接: redis-cli -h 127.0.0.1 -p 6479

查看redis进程是否开启: ps -es|grep redis

测试Redis性能:

测试100个并发连接 100000个请求: redis-benchmark -h 127.0.0.1 -p 6379 -c 100 -n 100000 image.png

2. Redis基础

    1. 默认一共有16个数据库 默认使用第一个
    1. 切换数据库
select 3 //选择3号数据库 
dbsize // 查看数据库大小

image.png

  • 3. 查看所有Key
keys *
    1. 清空数据
flushall // 清空所有 
flushdb // 清空当前库

image.png

  • 5. Redis是基于内存的,CPU不是Redis的瓶颈。使用的单线程

3. Redis五大数据类型基础

3.1 Redis-Key

EXISTS key // 查看是exist否有这个key

image.png

move key 1 // 将key移动到1号数据库

image.png

expire key 10 // 设置key 十秒钟过期
ttl key // 查看key过期剩余时间

image.png

type key // 查看key对应的value类型

image.png

3.2 Redis-String类型

set key1 v1 // 设置值
append key1 value // 往key1中追加v1

如果追加一个不存在的key则会创建

image.png

strlen key // 字符串长度

image.png

incr key // 让这个值加一 
decr key // 减一

image.png

incrby key step // 直接加步长 
decrby key step

image.png

3.2.1 字符串范围

etrange key star end // [start, end]

image.png

3.2.2 setex 设置并指定过期时间

setex key1 10 hello // 设置key1 10秒过期 image.png

3.2.3 setnx 不存在在设置

setnx key1 redis

image.png

3.2.4 mset 批量设置

mset k1 v1 k2 v2 k3 v3 image.png

3.2.5 getset 先获取后设置

getset db redis // 如果不存在则返回nil 
get set db mongodb // 如果存在返回原来的值 并设置新的值

image.png

String类似的使用场景:value除了是字符串还可以是数字

  • 计数器
  • 统计关注的数量 uid:9292939:follow -> 0