国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

webman Redis::eval() 使用報(bào)錯(cuò)

橘叔
 public static function unlock($name = '', $token = '')
    {
        $args = ['redis-lock' . $name, $token];
        return Redis::eval(self::getReleaseLuaScript(), $args, 1);
    }
public static function getReleaseLuaScript(): string
    {
        return <<<LUA
if redis.call("get",KEYS[1]) == ARGV[1]
then
    return redis.call("del",KEYS[1])
else
    return 0
end
LUA;
    }
咨詢一下大佬,我想在webman中使用redis鎖,但是使用lua的原子性直接報(bào)錯(cuò)

ErrorException: Redis::eval() expects parameter 3 to be int, array given in /Users/xxx/php/webman_jinrong/vendor/illuminate/redis/Connections/Connection.php:116
我到底層去打印最終的eval的數(shù)據(jù)的時(shí)候發(fā)現(xiàn) args 和 key 是反過來了是為什么
2310 4 1
4個(gè)回答

碼龍

Redis::eval() expects parameter 3 to be int, array given in

整形傳成了數(shù)組

  • 暫無評(píng)論
Tinywan

哈哈!這個(gè)問題剛開始也遇到了,本以為是 illuminate/redis 擴(kuò)展庫(kù)的問題。推薦使用 evalSha

  • 暫無評(píng)論
Tinywan

如果使用Redis做延遲任務(wù)隊(duì)列,原生的是可以支持的,但是使用evalSha 依然不會(huì)觸發(fā)任務(wù)。寫了一個(gè)完整的項(xiàng)目,感覺這個(gè)Redis不是太友好,自己重新封裝了一個(gè)

  • 暫無評(píng)論
年代過于久遠(yuǎn),無法發(fā)表回答
??