Java -- redis 深度历险学习

1、基本数据结构

# 基本设置获取
set name1 v1
get name1 
exists name1
del name1

# 批量
mset name1 v1 name2 v2 name3 v3
mget name1 name2 name3

# 过期时间设置
expire name1 5
setex name4 5 v4

# 数字操作
set num 10
incr num
incrby num 10
decr num
decrby num 10

# 集合 list
rpush books python java golang
lpop books
rpop books
llen books
lindex books 1(获取给定位置的元素)   
lrange books 0 -1(获取所有)

# 集合 hash
hset sets key1 value1
hlen sets
hgetall sets
hget sets key1

# 集合 set
sadd sets aa bb cc dd ee ff
smembers sets
sismember sets cc
scard sets(获取长度)
spop sets(弹出一个)
srem sets cc

# 集合 zset
zadd sets 9 aa
zrange sets 0 -1
zrevrange sets 0 -1(逆序排列)
zcard sets(获取长度)
zscore sets aa(获取分数)

2、分布式锁

# 举例方式,如果不存在创建,并设置10s过期
setnx lock:aa true
expire lock:aa 10

# 原子方式,不要执行较长时间的任务
set lock:aa true ex 5 nx

3、消息队列

  • 使用 rpush、lpop 或者 lpush、rpop 来操作
# 入队
rpush queue aa bb cc dd

# 普通读取
lpop queue

# 阻塞读取,阻塞 5 秒
blpop queue 5

4、延时队列

  • 使用 zset,value 代表数据,score 代表时间

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值