当前位置: 首页 > 工具软件 > ioredis > 使用案例 >

ioredis pipeline用法

卢才艺
2023-12-01

nodejs 的ioredis pipeline 的用法与java 有区别

var redis = new Redis(6379, '192.168.0.147');
let testrds = redis.duplicate()//复制redis实例
testrds.select(0)//选择0库

function test2() {
  let pp = testrds.pipeline()//采用管道操作
  //复制一个实例  
  pp.sadd("a1", "a2")
  pp.sadd("a1", ["a3", "a4"])
  pp.smembers("a1")
  pp.exec(function (err, result) { 
    console.log("e1", err);
    console.log("r1", result);
  })
  //后续exec语句不会执行,
  // pp.exec(function (err, result) { 
  //   console.log("e2", err);
  //   console.log("r2", result);
  // })
}
//第一次调用
test2();
//第二次调用
test2();

输出结果:

e1 null
r1 [ [ null, 0 ], [ null, 0 ], [ null, [ 'a3', 'a4', 'a2' ] ] ]
e1 null
r1 [ [ null, 0 ], [ null, 0 ], [ null, [ 'a3', 'a4', 'a2' ] ] ]

注意 pp=testrds.pipeline() 与 pp.exec() 分别是 开闭指令
在开闭指令中的可以连续执行 多条指令
一个pp 只能调用一次 exec()

 类似资料: