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);

        }

      }

      

  • 相关阅读:
    error C2065: 'IDD_DIALOG1' : undeclared identifier
    MySQL API函数
    MFC连接MySQL C API方法
    MFC连接MySQL
    MFC连接MySQL数据库方法
    error C4430: error 2141
    GetLastError
    char与CString相互转换
    处理图片(获取图片详细信息)大小 格式
    RGB颜色值 十六进制颜色码 转换
  • 原文地址:https://www.cnblogs.com/stanljj/p/7119687.html
Copyright © 2011-2022 走看看