【发布时间】:2019-12-02 14:55:34
【问题描述】:
我使用 Java 创建具有单个主题和单个侦听器的 Redis Pub/Sub,例如谢谢:
这是我在 MvcConfigurer 中的 Bean:
@Bean
MessageListenerAdapter messageListener() {
return new MessageListenerAdapter(redisMsgHandler);
}
@Bean
public RedisMessageListenerContainer redisMessageListenerContainer() {
RedisMessageListenerContainer mlc = new RedisMessageListenerContainer();
mlc.setConnectionFactory(lettuceConnectionFactory());
mlc.addMessageListener(messageListener(), topic());
return mlc;
}
@Bean
ChannelTopic topic() {
return new ChannelTopic("pubsub:queue");
}
那是我收到消息的地方,请不要将此 RedisMsghandler 类用于 MvcConfigurer
public class RedisMsgHandler implements MessageListener {
@Override
public void onMessage(Message message, byte[] bytes) {
//impl goes here
}
}
我的主要目标是创建多个主题和多个侦听器,例如 RedisMsgHandler,请告诉我如何去做。
创建大量在 MessageListener 上实现的类以及为每个主题创建大量 bean 让我感到不舒服
【问题讨论】:
标签: java spring redis publish-subscribe