首先启用
登陆redis-cli,输入命令:
config set notify-keyspace-events Ex
订阅的key
__keyevent@<db>__:expired
这个格式是固定的,db代表的是数据库的编号,由于订阅开启之后这个库的所有key过期时间都会被推送过来,所以最好单独使用一个数据库来进行隔离。可以使用redis来处理定时任务一种思路。
1.启用redis通知功能,并订阅过期的key,等待接收过期的key相关数据
2.设置键值对及过期时间
3.步骤2设置5秒过期时间后,步骤1窗口接收到过期的key test
spring中订阅redis键值过期消息通知
<!-- 设置redis消息订阅(方式1) -->
<!--<bean id="listener" class="
com.xlhy.new_agent.controller.DefaultMessageDelegate
" />
<redis:listener-container connection-factory="jedisConnFactory">