zoukankan      html  css  js  c++  java
  • Redis 脚本

    ## EVAL script numkeys key [key ...] arg [arg ...] 
    ## EVAL script numkeys key [key ...] arg [arg ...] 
    redis 127.0.0.1:6379> eval "return {KEYS[1],KEYS[2],ARGV[1],ARGV[2]}" 2 key1 key2 first second
    1) "key1"
    2) "key2"
    3) "first"
    4) "second"
    
    ##Redis Script Load 命令用于将脚本 script 添加到脚本缓存中,但并不立即执行这个脚本
    ##EVAL 命令也会将脚本添加到脚本缓存中,但是它会立即对输入的脚本进行求值。
    ##如果给定的脚本已经在缓存里面了,那么不执行任何操作。
    ##在脚本被加入到缓存之后,通过 EVALSHA 命令,可以使用脚本的 SHA1 校验和来调用这个脚本。
    ##脚本可以在缓存中保留无限长的时间,直到执行 SCRIPT FLUSH 为止。 
    
    redis 127.0.0.1:6379> SCRIPT LOAD "return 1"
    "e0e1f9fabfc9d4800c877a703b823ac0578ff8db"
    
    ##Redis Evalsha 命令根据给定的 sha1 校验码,执行缓存在服务器中的脚本。
    ##将脚本缓存到服务器的操作可以通过 SCRIPT LOAD 命令进行。
    ##这个命令的其他地方,比如参数的传入方式,都和 EVAL 命令一样。
    ##redis 127.0.0.1:6379> EVALSHA sha1 numkeys key [key ...] arg [arg ...] 
    
    redis 127.0.0.1:6379> SCRIPT LOAD "return 'hello moto'"
    "232fd51614574cf0867b83d384a5e898cfd24e5a"
    
    redis 127.0.0.1:6379> EVALSHA "232fd51614574cf0867b83d384a5e898cfd24e5a" 0
    "hello moto"
    
    ##Redis Script Exists 命令用于校验指定的脚本是否已经被保存在缓存当中。
    redis 127.0.0.1:6379>SCRIPT EXISTS sha1 [sha1 ...]
    
    ##Redis Script Flush 命令用于清除所有 Lua 脚本缓存
    redis 127.0.0.1:6379> SCRIPT FLUSH
    
    ## Redis Script kill 命令用于杀死当前正在运行的 Lua 脚本,当且仅当这个脚本没有执行过任何写操作时,这个命令才生效。
    ##这个命令主要用于终止运行时间过长的脚本,比如一个因为 BUG 而发生无限循环的脚本。
    ##SCRIPT KILL 执行之后,当前正在运行的脚本会被杀死,执行这个脚本的客户端会从 EVAL 命令的阻塞当中退出,并收到一个错误作为返回值
    redis 127.0.0.1:6379> SCRIPT KILL
    
  • 相关阅读:
    矩阵快速幂---BestCoder Round#8 1002
    行列式及其基本性质
    排列,逆序
    扩展欧几里得
    AC automation 模板
    hdu2897 巴什博奕
    hdu2188 巴什博奕
    hdu1846 巴什博奕
    hdu2149 巴什博奕
    【转】博弈基础
  • 原文地址:https://www.cnblogs.com/konglingxi/p/9454214.html
Copyright © 2011-2022 走看看