【问题标题】:Why does redigo return ERR unknown command 'EVALSHA'为什么 redigo 返回 ERR 未知命令 'EVALSHA'
【发布时间】:2019-02-02 17:45:12
【问题描述】:

https://github.com/garyburd/redigo

为什么 redigo 返回错误信息?

错误信息:

ERR unknown command 'EVALSHA'
ERR unknown command 'EVALSHA'

代码:

const lockScript = `
local v = redis.call("GET", KEYS[1])
if v == false or v == ARGV[1]
then
    return redis.call("SET", KEYS[1], ARGV[1], "EX", ARGV[2]) and 1
else
    return 0
end
`

func CounterRegScript() {
    rc := RedisClient.Get()
    defer rc.Close()

    script := redis.NewScript(1, lockScript)
    resp, err := script.Do(rc, "xiaorui.cc", "nima", int64(3))
    fmt.Println(resp)
    fmt.Println(err)
}

【问题讨论】:

标签: go redis


【解决方案1】:

您使用的是旧版本的 Redis。升级到 2.6 或更高版本。

【讨论】:

    猜你喜欢
    • 2020-01-19
    • 2020-10-28
    • 2019-01-07
    • 2020-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-06
    • 1970-01-01
    相关资源
    最近更新 更多