Is it possible to connect using a unix-socket instead of TCP?
Redis := redis.NewClient(func() (net.Conn, error) {
return net.DialTimeout("unix", "/tmp/redis.sock", 1*time.Second)
}, nil, redis.AuthSelectFunc("", -1))
defer Redis.Close()
if ping := Redis.Ping(); ping.Err() == nil {
fmt.Println(ping.Val())
} else {
fmt.Println(ping.Err())
}
Adding NewClientUnix* helper methods would be useful, as most people run Redis close to client process via unix socket.
gurre, sorry, but I somehow missed your question.
aGrmbl, thanks, I will think about adding helper.
Now it is as simple as:
client := redis.NewUnixClient("/tmp/redis.sock", "", -1)
aGrmbl, thanks again.
r := redis.NewClient(&redis.Options{
Network: "unix",
Addr: "/var/run/redis/redis.sock",
Password: "",
DB: "1",
})
Don't forget to check file perms.
r := redis.NewClient(&redis.Options{
Network: "unix",
Addr: "/var/run/redis/redis.sock",
Password: "",
DB: "1",
})
#
Most helpful comment
Don't forget to check file perms.