Go连接需要密码的Redis执行Lua脚本

本文主要包括以下要点:

1.使用Go连接需要密码的Redis

2.执行Lua脚本

3.获取脚本执行结果

代码如下

package main

import (
	"github.com/gomodule/redigo/redis"
	"fmt"
)

func main() {
	script := `
local sum = ARGV[1]+ARGV[2]
redis.call('setex', KEYS[1], 10, sum)
return sum
`
	c, err := redis.Dial("tcp", "127.0.0.1:6379")
	if err != nil {
		fmt.Println(err)
		return
	}
	defer c.Close()
	if _, err := c.Do("AUTH", "fc4234450eac470d8604fbdff4a34121"); err != nil {
		c.Close()
		fmt.Println(err)
		return
	}
	if _, err := c.Do("SELECT", 0); err != nil {
		c.Close()
		fmt.Println(err)
		return
	}
	var getScript = redis.NewScript(1, script)

	reply, err := getScript.Do(c, "s", 8, 10)
	fmt.Println(reply)

}

你可能感兴趣的:(Redis,Go)