zoukankan      html  css  js  c++  java
  • 5. redis管道, 发布订阅, 模拟队列

    一. 发布订阅

    #订阅scribe
    127.0.0.1:6379> SUBSCRIBE "channel_1"
    Reading messages... (press Ctrl-C to quit)
    1) "subscribe"
    2) "channel_1"
    3) (integer) 1
    1) "message"
    2) "channel_1"
    3) "haha"
    1) "message"
    2) "channel_1"
    3) "hello world"
    
    #发布消息publish
    127.0.0.1:6379> publish "channel_1" haha
    (integer) 1
    127.0.0.1:6379> publish "channel_1" "hello world"
    (integer) 1
    

    二. 模拟队列

    1. 普通队列 : 对list进行lpush , rpop
    2. 优先级队列 :
      brpop list1 list2 list3 timeout // 先从list1取,list1没有数据了再从list2取

    三. pipline管道

    1. redis的管道相当于把多条命令批处理, 使原来多条命令需要多次连接服务器转为多条命令连接一次服务器
    2. pipline在命令行下没有,jedis有
    /** pipline */
    public void test3(){
        Pipeline pipelined = jedis.pipelined();
        for (int i = 0; i < 100; i++) {
            pipelined.set("str"+i,i+"");
        }
        pipelined.sync();  // 提交管道
    }
    
  • 相关阅读:
    将.lib库文件转换成.a库文件的工具
    协议
    协议
    bzoj1066
    bzoj2668
    bzoj2245
    bzoj2324后续思考
    bzoj2324
    jsoi2014前两轮回眸
    bzoj1293
  • 原文地址:https://www.cnblogs.com/72808ljup/p/5208519.html
Copyright © 2011-2022 走看看