redis事务,删除策略,高级数据类型

本文介绍了Redis中的事务机制,包括`multi`和`exec`命令的使用,以及如何在事务执行过程中取消操作。此外,文章详细讨论了Redis的数据删除策略,包括定时删除、惰性删除和定期删除,分析了它们的优缺点。还提到了Redis的逐出算法,当内存不足时,如何选择数据进行删除,并介绍了相关配置和策略。最后,文章提及了Bitmaps和HyperLogLog数据类型在信息统计和基数估算中的应用。
摘要由CSDN通过智能技术生成
什么是事务
Redis执行指令过程中,多条连续执行的指令被干扰,打断,插队
127.0.0.1:6379>set name itheima
127.0.0.1:6379>get name
127.0.0.1:6379>set name itcast
127.0.0.1:6379>get name
itheima
itcast
客户端1
客户端2
itcast
一个队列中,一次性、顺序性、排他性的执行一系列命令
事务简介
事务基本操作
redssion
Contents 事务基本操作
事务的边界
multi
exec 事务基本操作
事务的基本操作
开启事务
multi
作用
设定事务的开启位置,此指令执行后,后续的所有指令均加入到事务中
执行事务
exec
作用
设定事务的结束位置,同时执行事务。与multi成对出现,成对使用
注意:加入事务的命令暂时进入到任务队列中,并没有立即执行,只有执行exec命令才开始执行 事务基本操作
事务的基本操作
事务定义过程中发现出了问题,怎么办?
取消事务
作用
终止当前事务的定义,发生在multi之后,exec之前
discard 事务基本操作
事务的工作流程
时效性数据的存储结构
EXPIRE
EXPIREAT
PEXPIRE
PEXPIREAT
SETEX
key
expires
0x0110
0x4C3F
135954124
135957390
Redis 存储空间
name
age
66
itheima
0x0110
0x4C3F 数据删除策略
数据删除策略的目标
在内存占用与CPU占用之间寻找一种平衡,顾此失彼都会造成整体redis性能的下降,甚至引发服务器宕机或
内存泄露 数据删除策略
定时删除
创建一个定时器,当key设置有过期时间,且过期时间到达时,由定时器任务立即执行对键的删除操作
优点:节约内存,到时就删除,快速释放掉不必要的内存占用
缺点:CPU压力很大,无论CPU此时负载量多高,均占用CPU,会影响redis服务器响应时间和指令吞吐量
总结:用处理器性能换取存储空间(拿时间换空间)
expires
0x0110
135954124
Redis 存储空间
name
itheima
0x0110
135954122
135954123
135954124
135954124 数据删除策略
惰性删除
数据到达过期时间,不做处理。等下次访问该数据时
如果未过期,返回数据
发现已过期,删除,返回不存在
优点:节约CPU性能,发现必须删除的时候才删除
缺点:内存压力很大,出现长期占用内存的数据
总结:用存储空间换取处理器性能
expireIfNeeded()
(拿时间换空间)
expires
0x0110
135954124
Redis 存储空间
name
itheima
0x0110
135954122
135954123 <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值