Redis

Redis作为内存数据库,常用于缓存、数据库和消息队列。常见数据类型包括string、list、set、zset和hash。Redis支持设置过期时间,采用消极和积极方法清理过期key。缓存穿透、击穿、雪崩是缓存问题的三大场景,解决方案包括缓存空结果、布隆过滤器、分布式锁等。Redis使用lua脚本可实现原子操作和减少网络开销。了解其内存淘汰策略和持久化方式有助于优化性能。哨兵模式和分片集群模式是Redis集群的两种形式,各有优缺点。解决大量key查询可利用scan命令。Redis的速度得益于内存操作、单线程和非阻塞IO。
摘要由CSDN通过智能技术生成

1.Redis一般用来干嘛?

Redis是一个基于内存的数据结构存储服务器,常被用作数据库、缓存、消息队列,是目前最主流的Nosql数据库之一。

2.我们常用的数据类型有哪些呢?你能说说他们分别在什么场景下使用呢?

常用的数据类型有string、list、set、zset、hash

string类型是redis中最基本的数据类型,也是使用最多的一种数据类型,他能存储任何形式的字符串

list可以存储一个字符串列表,按照数据加入的顺序排序,他非常方便的在列表头部和尾部添加元素。

set类型是一个无顺序的字符串集合,集合中每个元素都是不同的,不允许有重复数据。

zset类型与set相似,也是一个无重复元素的集合,不同的是zset的每个元素会关联一个分数,这个分数用于对集合元素进行排序

hash类型是一个string类型的field和value的映射表

3.Redis可以设置过期吗?你能说说Redis的过期清理原理

在Redis中提供了Expire命令设置一个键的过期时间,到期以后Redis会自动删除它。

Redis删除过期key的方法主要有两种:

1.消极方法

在key被访问时如果发现它已经失效,那么就删除他

2.积极方法

周期性的从设置了过期时间的key中选择一部分过期的key删除,对于那些从未被查询的key,即便他们已经过期,消极方法也无法清除,因此Redis会周期性的随机测试一些key,已过期的key将会被删除掉

4.缓存有什么用?

缓存是解决系统性能问题的利器,通过缓存技术来降低后端服务压力,提升系统整体性能

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值