zoukankan      html  css  js  c++  java
  • Redis消息订阅与发布

    监听器的创建

    package com.sogou.baike.testimport.testSubscribe;  
      
    import redis.clients.jedis.JedisPubSub;  
      
    
    public class RedisMsgPubSubListener extends JedisPubSub {  
        @Override  
        public void unsubscribe() {  
            super.unsubscribe();  
        }  
      
        @Override  
        public void unsubscribe(String... channels) {  
            super.unsubscribe(channels);  
        }  
      
        @Override  
        public void subscribe(String... channels) {  
            super.subscribe(channels);  
        }  
      
        @Override  
        public void psubscribe(String... patterns) {  
            super.psubscribe(patterns);  
        }  
      
        @Override  
        public void punsubscribe() {  
            super.punsubscribe();  
        }  
      
        @Override  
        public void punsubscribe(String... patterns) {  
            super.punsubscribe(patterns);  
        }  
      
        @Override  
        public void onMessage(String channel, String message) {  
            System.out.println("channel:" + channel + "receives message :" + message);  
            this.unsubscribe();  
        }  
      
        @Override  
        public void onPMessage(String pattern, String channel, String message) {  
      
        }  
      
        @Override  
        public void onSubscribe(String channel, int subscribedChannels) {  
            System.out.println("channel:" + channel + "is been subscribed:" + subscribedChannels);  
        }  
      
        @Override  
        public void onPUnsubscribe(String pattern, int subscribedChannels) {  
      
        }  
      
        @Override  
        public void onPSubscribe(String pattern, int subscribedChannels) {  
      
        }  
      
        @Override  
        public void onUnsubscribe(String channel, int subscribedChannels) {  
            System.out.println("channel:" + channel + "is been unsubscribed:" + subscribedChannels);  
        }  
    }  

    订阅类的创建

    public class TestSubscribe {  
        @Test  
        public void testSubscribe() throws Exception{  
            Jedis jedis = new Jedis("localhost");  
            RedisMsgPubSubListener listener = new RedisMsgPubSubListener();  
            jedis.subscribe(listener, "redisChatTest");  
            //other code  
        }  
    }  

    发布消息

    Public class TestPublish {  
        @Test  
        public void testPublish() throws Exception{  
            Jedis jedis = new Jedis("localhost");  
            jedis.publish("redisChatTest", "我是天才");  
            Thread.sleep(5000);  
            jedis.publish("redisChatTest", "我牛逼");  
            Thread.sleep(5000);  
            jedis.publish("redisChatTest", "哈哈");  
        }  
    }  
  • 相关阅读:
    服务器响应状态码
    细说同域-同父域-跨域
    细说Ajax跨域
    为SQL缓存通知启用数据库
    使用PATINDEX()判断含有[A-Z]、[a-z]、[0-9]之外的字符
    记一次SQLServer的分页优化兼谈谈使用Row_Number()分页存在的问题
    谈谈如何在面试中发掘程序猿的核心竞争力
    “属性”与“特性”区别
    【转】安卓手机无法安装软件的原因总结
    【转】自学android半年,已从.net转型成android程序员
  • 原文地址:https://www.cnblogs.com/clovejava/p/8030423.html
Copyright © 2011-2022 走看看