Redis Pipeline流水线操作,redis简单的事务概念

目录标题

  • Redis Pipeline 流水线操作
    • Pipeline基础概念
    • 简单的Pipeline操作示例
  • Redis简单事务
    • redis事务指令

Redis Pipeline 流水线操作

  • Pipeline基础概念

       redis命令执行流程为:发送命令,命令排队,命令执行,返回结果。

       从发送命令到返回结果,一次耗时为往返时间RTT

       redis少部分指令支持批量操作,大部分不支持,N次执行指令,耗时N次RTT。长距离传输延时效果会更明显,这就与redis高并发吞吐特性违背。

       Pipeline操作,将一组redis操作指令进行组装,通过一次RTT传输给Redis,在将执行结果顺序返回。

  • 简单的Pipeline操作示例

    构建一个Pipeline对象,将删除对象key依次放入Pipeline对象。 pipeline.sync()执行。

     public static void main(String[] args) {
            Jedis jedis = new Jedis("host");
            Pipeline pipeline = jedis.pipelined();
    
            List<String> list = new ArrayList<>(); 
            for (String key : list) {
                pipeline.del(key);
            }
            try {
                pipeline.sync();
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                jedis.close();
            }
        }
    

Redis简单事务

  • redis事务指令

     multi开启事务
     exec执行事务
     discard停止事务
    

       redis简单事务,不支持事务回滚,事务执行时出现命令错误,Redis事务中的所有指令将不进行执行。
       redis事务中的指令执行后,运行时出现运行错误,即指令正确,业务不对,事务会正常执行完毕,出现的数据错误,需人工调整。

你可能感兴趣的:(Redis)