a redis client for GopherLua VM, based on redis/go-redis
go get github.com/Root-lee/gluaredis
package main
import (
"github.com/Root-lee/gluaredis"
lua "github.com/yuin/gopher-lua"
)
func main() {
L := lua.NewState()
gluaredis.Preload(L)
defer L.Close()
if err := L.DoFile("test.lua"); err != nil {
panic(err)
}
}
test.lua
local redis = require("redis")
local rdb = redis.new_client("localhost:6379", "")
local err = rdb:set("name", "Root-lee", 0)
print("set:", err)
local success, err = rdb:setnx("name2", "Root-lee2", 0)
print("setnx:", success, err)
local val, exist, err = rdb:get("name")
print("get:", val, exist, err)
local success, err = rdb:expire("name", 1)
print("expire:", success, err)
local val, exist, err = rdb:get("name")
print("get:", val, exist, err)
local err = rdb:del("name")
print("del:", err)
local val, exist, err = rdb:get("name")
print("get:", val, exist, err)
$go test -gcflags="all=-N -l" github.com/Root-lee/gluaredis...
ok github.com/Root-lee/gluaredis 0.342s
You can start a local redis server: localhost:6379
You can refer to this lua script to write your own lua script
MIT