zoukankan      html  css  js  c++  java
  • Redis实现消息的发布/订阅

    利用spring-boot结合redis进行消息的发布与订阅:

      发布:

      class Publish {

        private static String topicName = “Topic:chat”;

        @Bean

        RedisMessageListenerContainer container(RedisConnectionFactory connectionFactory, MessageListenerAdapter messageListenerAdapter ) {

          RedisMessageListenerContainer  redisMessageListenerContainer  = new RedisMessageListenerContainer ();

          redisMessageListenerContainer.setConnectionFactory(connectionFactory);

          redisMessageListenerContainer.addMessageListenerAdapter(messageListenerAdapter ,new PatternTopic(topicName ));

          return  redisMessageListenerContainer;

        }

        @Bean

        MessageListenerAdapter messageListenerAdapter(Receiver recevier){

          return new MessageListenerAdapter (recevier,"receiveMessage");

        }

        @Bean

        Receiver recevier(@Value("Receiver-1") String name) {

          return new Receiver(name);

        }

        public static main(String[] args) {

          ApplicationContext ctx = SpringApplication.run(Publish .class,args);

          StringRedisTemple stringRedisTemple = ctx.getBean(StringRedisTemple.class);

          stringRedisTemple.convertAndSend(topicName ,"HAHAHAHAHAHA"); 

        }

      } 

          订阅:

      class Receiver {

        private String name;

        @Autowired

        public Receiver(String name) {

          this.name = name;

        }

        public void receiveMessage(String message) {

          System.ount.println(name + message);

        }

      }

      

  • 相关阅读:
    (Good Bye 2019) Codeforces 1270B Interesting Subarray
    (Good Bye 2019) Codeforces 1270A Card Game
    Codeforces 1283D Christmas Trees(BFS)
    Codeforces 1283C Friends and Gifts
    Codeforces 1283B Candies Division
    1095 Cars on Campus (30)
    1080 Graduate Admission (30)
    1099 Build A Binary Search Tree (30)
    1018 Public Bike Management (30)
    1087 All Roads Lead to Rome (30)
  • 原文地址:https://www.cnblogs.com/stanljj/p/7119687.html
Copyright © 2011-2022 走看看