题Redis过期策略面试必备问题有哪些(redis过期策略面试)

2023-05-09 23:55:34 面试 策略 过期

Redis是分布式内存数据库,过期策略对于Redis的性能影响很大,它可以控制Redis如何处理数据的过期时间以及清理已经过期数据,这就是提到Redis过期策略是面试必备问题的原因。下面是关于Redis过期策略的一些常见面试问题:

1. 简述Redis过期策略是怎么实现的?

Redis过期策略是基于给定的时间和空间复杂度实现的,它的实现原理是通过为每个数据项都设置一个过期时间,这些数据项在时间点到达时会被自动删除。Redis使用一个定时任务来判断哪些rediskey过期了,它采用定时删除策略,它可以定期检查哪个key已过期,然后把它从数据库中删除。

2. Redis数据过期时能做什么?

Redis数据过期时可以执行自定义回调函数,处理过期时想要执行的操作。例如:当用户登录失效时可以向用户发送一些消息,或者执行一些清理操作。下面的实例展示了如何使用Redis过期策略来执行自定义回调函数:

// 设置key过期时间
redis.expire('key1', 10, function (err, result) {

// 执行操作回调
if (err) {
console.log(err);
}
else {
// 处理过期key
redis.on('evt_expired', function (key, val) {
console.log(key + " is expired,val is " + val);
});
}
});

3. Redis的过期策略有哪些?

Redis的过期策略有两种:定时过期和惰性过期。定时过期是指在指定的时间点进行过期检查,在这种情况下,当满足 expiration key为0的条件时,key将被删除。而惰性过期就是key被检查的时机,当访问或设置key的值时,如果key已经过期了,那么将会被删除。

相关文章