当前位置:网站首页>Redis redis 】 【 the expiration of listening
Redis redis 】 【 the expiration of listening
2022-08-09 08:15:00 【Ctrl Trainee - Brother Xie blog】
redisExpired monitoring
使用场景:在我们项目中,Need to put payment for overtime orders,Operations such as updating status and rolling back inventory.在这里,使用redisExpired monitoring can do it
↓↓↓下面上代码↓↓↓
首先需要redisFor the monitoring to take effect, the following code needs to be configured
yml文件
RedisListenerConfig.java
@Slf4j
@Configuration
public class RedisListenerConfig {
@Bean
public RedisMessageListenerContainer container(RedisConnectionFactory redisConnectionFactory) {
RedisMessageListenerContainer container = new RedisMessageListenerContainer();
container.setConnectionFactory(redisConnectionFactory);
log.info("redisThe monitoring configuration takes effect");
return container;
}
}
使用
RedisKeyExpirationListener.java
@Slf4j
@Configuration
public class RedisKeyExpirationListener extends KeyExpirationEventMessageListener {
@Value("${spring.redis.database}")
private Integer redisDatabase;
private final RedisTemplate<String, String> redisTemplate;
public RedisKeyExpirationListener(RedisMessageListenerContainer listenerContainer, RedisTemplate<String, String> redisTemplate) {
super(listenerContainer);
this.redisTemplate = redisTemplate;
}
@Override
public void onMessage(Message message, byte[] bytes) {
log.info("The expired listener event starts");
RedisSerializer<?> serializer = redisTemplate.getValueSerializer();
String channel = String.valueOf(serializer.deserialize(message.getChannel()));
// 获取过期的Key值
String body = String.valueOf(serializer.deserialize(message.getBody()));
// DB0 key过期监听
if (StrUtil.format("[email protected]{}__:expired", redisDatabase).equals(channel)) {
System.out.println("第" + redisDatabase + "个DB库的key过期,key:" + body);
}
}
}
我们测试一下
等待30秒…
结果如下
总结
如果觉得不错,可以点赞+收藏或者关注下博主.感谢阅读!
边栏推荐
- Operations in the database (syntax)
- Programming a washing machine: garbled characters after string output
- H3C_利用策略路由实现出口双线路负载(选路)的部署
- Literature retrieval operation code
- Non-decreasing Array
- 账号和权限管理
- C language: adjust the order of odd and even numbers
- scp upload file to remote server
- 主键id,Snowflake雪花算法,优点:生成有顺序的id,提高数据库的性能
- IO字节流读取文本中文乱码
猜你喜欢
随机推荐
文件处理(IO)
火星人 --简单的数学题
Euclid and the game
Jmeter连接Mysql和Mysql编码问题
scp上传文件到远程服务器
权限(上)
LeetCode·每日一题·761.特殊的二进制序列·分治
9.进程和计划任务管理(1)
pragma comment的使用(转载)重新排版
libtorch示例
路由配置转发及实验
EMQ X message server learning record - prepare for the subsequent completion
EMQ X 消息服务器学习记录——为后面的毕设做准备
System transformation and subnetting
主键id,Snowflake雪花算法,优点:生成有顺序的id,提高数据库的性能
Servlet的实现原理解析(serverapplet)(服务端程序)
转换为onnx模型错误汇总
世界顶尖3D Web端渲染引擎:HOOPS Communicator技术介绍(一)
Use of prepareStatement
Account and Permission Management