导入依赖jar包
XML<!-- redis 配置信息--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency>
实现消息监听接口 MessageListener\重写 onMessage方法
java/** * @author haizhuangbu * @date 2024/3/31 11:30 * @mark UserInfoRegisterTopicListen */ @Component @Slf4j public class UserInfoRegisterTopicListen implements MessageListener { @Autowired private RedisTemplate<String, String> redisTemplate; @Override public void onMessage(Message message, byte[] bytes) { log.info("接收到redis消息队列消息 : {}", message.toString()); } }
绑定 topic 与 监听器
java@Configuration public class RedisTopicQueueConfig { @Autowired private UserInfoRegisterTopicListen userInfoRegisterTopicListen; /** * @param connectionFactory 连接工厂 * @return redis 监听容器 */ @Bean public RedisMessageListenerContainer container(RedisConnectionFactory connectionFactory) { RedisMessageListenerContainer redisMessageListenerContainer = new RedisMessageListenerContainer(); redisMessageListenerContainer.setConnectionFactory(connectionFactory); // 连接工厂 redisMessageListenerContainer // 配置适配器与对应消息队列信息 .addMessageListener(new MessageListenerAdapter(userInfoRegisterTopicListen, MessageListenerAdapter.ORIGINAL_DEFAULT_LISTENER_METHOD), new ChannelTopic(RedisTopicQueueEnum.USER_REGISTER.getTopic())); return redisMessageListenerContainer; } }
测试
代码测试
javaredisTemplate.convertAndSend("userRegister", String.format("用户 %s 注册失败", userDto.getUsername()));
消息消费成功
spring-boot. 结合redis 实现消息队列
布Coder2024-04-01 7:09
相关推荐
亮子AI23 分钟前
【NestJS】在 nest.js 项目中,如何使用 Postgresql 来做缓存?EndingCoder1 小时前
Node.js 数据查询优化技巧TDengine (老段)1 小时前
TDengine 数学函数 SIGN 用户手册RestCloud1 小时前
Kingbase 与 ETL:如何实现金融级数据库的安全数据同步好大的月亮1 小时前
oss中的文件替换后chrome依旧下载到缓存文件概述Elastic 中国社区官方博客1 小时前
在 Elastic Observability 中,启用 TSDS 集成可节省高达 70% 的指标存储Thepatterraining2 小时前
MySQL数据存储黑科技:Page布局、行存储与压缩算法全解密wan5555cn2 小时前
中国启用WPS格式进行国际交流:政策分析与影响评估惜分飞2 小时前
raid恢复之后数据库故障处理(ora-01200,ORA-26101,ORA-600)---惜分飞洲覆3 小时前
SQL 性能优化:出现 sql 比较慢怎么办?
