引入套件
import "github.com/jamesblockk/rdslock"
使用 url 初始化
rdslock.InitURL("redis://127.0.0.1:6379")
使用已有連線 初始化 rdslock
client := redis.NewClient(&redis.Options{
Addr: "127.0.0.1:6379",
Password: "",
DB: 0,
})
rdslock.InitAssigned(client)
在分佈式系統 執行一次的作法
const key = "LOCK_TEST_KEY"
err := rdslock.Lock(key, 5 * time.Second )
if err != nil {
println(err.Error())
return
}
println("lock success ... ")
do something ....
err = rdslock.UnLock(key)
if err != nil {
println(err.Error())
return
}
println("unlock success ...")