redis_消息队列
Redis的消息是topic(广播)机制。感觉实用性不大,因为消息有专门的消息技术,如kafka,mq。在这里简单做个笔记。
发布消息:publish 名称 "内容"
订阅消息:subscribe channel 名称
psubscribe channel 名称*(通配符)
上代码:
public class Demo1 {
@Test
public void testMassage(){
//创建一个Redis的客户端
Jedis jedis = new Jedis("192.168.157.112",6379);
//订阅消息
jedis.subscribe(new MyMessageConsumer(), "c1");
}
}
//自己来实现一个消费者
class MyMessageConsumer extends JedisPubSub{
@Override
public void onMessage(String channel, String message) {
System.out.println("频道:"+ channel + "\t" +"消息:"+ message);
}
@Override
public void onPMessage(String arg0, String arg1, String arg2) {
//使用通配符
}
@Override
public void onPSubscribe(String arg0, int arg1) {
// TODO Auto-generated method stub
}
@Override
public void onPUnsubscribe(String arg0, int arg1) {
// TODO Auto-generated method stub
}
@Override
public void onSubscribe(String arg0, int arg1) {
// TODO Auto-generated method stub
}
@Override
public void onUnsubscribe(String arg0, int arg1) {
// TODO Auto-generated method stub
}
}