Redis 触发器
监听 Redis 中Key超时失效的事件
Redis中的key可以设置生存时间,当该key超时失效时会触发一个事件
“过期事件通过Redis的订阅与发布功能(pub/sub)来进行分发。”
首先需要修改Redis 的配置文件,将 notify-keyspace-events 的值改为 Ex
1.监听程序
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
import redis.clients.jedis.JedisPubSub;
/**
* 监听器,监听redis中键到期自动删除事件,(键需要设置过期时间)
*
* 需要在redis配置文件中设置 notify-keyspace-events 的值为 Ex
*/
public class RedisTimerListener extends JedisPubSub {
//获取jedis连接
Jedis jedis ;
public void init(){
JedisPool jedisPool = new JedisPool(new JedisPoolConfig(),"127.0.0.1",6379,0,"redis",0);
jedis = jedisPool.getResource();
}
/**
* 监听器被加载时执行该方法
*/
@Override
public void onPSubscribe(String pattern, int subscribedChannels) {