redis的Pipelined的实验
Posted kasher
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了redis的Pipelined的实验相关的知识,希望对你有一定的参考价值。
Pipelined 一千条插入一次 SET: 1.648 seconds
普通模式Pipelined SET: 43.665 seconds
Pipelined 一千条插入一次 SET: 2.153 seconds
普通模式Pipelined SET: 54.158 seconds
Pipelined 一千条插入一次 SET: 2.656 seconds
普通模式Pipelined SET: 53.896 seconds
Pipelined 一千条插入一次 SET: 1.512 seconds
普通模式Pipelined SET: 42.119 seconds
Pipelined 一千条插入一次 SET: 1.952 seconds
普通模式Pipelined SET: 39.732 seconds
Pipelined 一千条插入一次 SET: 2.031 seconds
普通模式Pipelined SET: 41.751 seconds
Pipelined 一千条插入一次 SET: 2.283 seconds
普通模式Pipelined SET: 40.043 seconds
Pipelined 一千条插入一次 SET: 2.18 seconds
普通模式Pipelined SET: 38.206 seconds
Pipelined 一千条插入一次 SET: 1.687 seconds
普通模式Pipelined SET: 40.043 seconds
Pipelined 一千条插入一次 SET: 1.66 seconds
普通模式Pipelined SET: 44.61 seconds
Pipelined 一千条插入一次 SET: 2.496 seconds
普通模式Pipelined SET: 49.562 seconds
Pipelined 一千条插入一次 SET: 1.833 seconds
普通模式Pipelined SET: 40.938 seconds
Pipelined 一千条插入一次 SET: 1.839 seconds
普通模式Pipelined SET: 40.364 seconds
代码:
Pipeline pipeline = JedisUtil.getPipeline();
//kasher redis
public void testPMain(List l) throws Exception{
for (int i = 0; i < 100; i++) {
testP(l);
testP1(l);
pipeline.close();
}
}
public void testP(List l) throws Exception{
//Pipeline pipeline = JedisUtil.getPipeline();
long start = System.currentTimeMillis();
for (int i = 0; i < 1000; i++) {
pipeline.set(SerializeUtil.serialize("p" + i), SerializeUtil.serialize(l));
//List<Object> results = pipeline.syncAndReturnAll(); // ---- 1
}
List<Object> results = pipeline.syncAndReturnAll(); // ------2
long end = System.currentTimeMillis();
System.out.println("Pipelined 一千条插入一次 SET: " + ((end - start)/1000.0) + " seconds");
System.out.println(SerializeUtil.unserialize(JedisUtil.get(SerializeUtil.serialize("p6"))));
//pipeline.close();
}
public void testP1(List l) throws Exception{
//Pipeline pipeline = JedisUtil.getPipeline();
long start = System.currentTimeMillis();
for (int i = 0; i < 1000; i++) {
pipeline.set(SerializeUtil.serialize("p" + i), SerializeUtil.serialize(l));
List<Object> results = pipeline.syncAndReturnAll(); // ---- 1
}
//List<Object> results = pipeline.syncAndReturnAll(); // ------2
long end = System.currentTimeMillis();
System.out.println("普通模式Pipelined SET: " + ((end - start)/1000.0) + " seconds");
System.out.println(SerializeUtil.unserialize(JedisUtil.get(SerializeUtil.serialize("p6"))));
//pipeline.close();
}
以上是关于redis的Pipelined的实验的主要内容,如果未能解决你的问题,请参考以下文章
为啥`SYS.odcivarchar2list`不能与`PIPELINED`函数一起使用