我们已经实现了Jedis.expire事件,并且倾向于使用KeyExpiredListener类的onPMessage方法。
KeyExpiredListener extends JedisPubSub {
......
public void onPMessage(String pattern, String channel, String message) {....}
....
}
完美无缺 当我们在Redis cli中设置通知事件时。
redis-cli config set notify-keyspace-events Ex
但正如预期的那样,如果我们重新启动redis服务器,事件监听器将切换回默认值,不会捕获任何事件,这与设置相同。
redis-cli config set notify-keyspace-events ""
所以我们尝试在redis.conf文件中设置它,但它没有工作,即没有捕获任何事件。
总结,如果我们在cli中设置
config set notify-keyspace-events Ex
它有效,如果我们在conf文件中设置(redis.conf)
notify-keyspace-events Ex
它不起作用。
谢谢!
答案 0 :(得分:1)
使用conf dir启动redis -
./redis-server <path of redis.conf> &
现在(notify-keyspace-events Ex)将在redis.conf中提及。