Можно ли подключиться с помощью unix-сокета вместо 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())
}
Было бы полезно добавить вспомогательные методы NewClientUnix*, так как большинство людей запускают Redis рядом с клиентским процессом через сокет unix.
gure, извините, но я как-то пропустил ваш вопрос.
aGrmbl, спасибо, подумаю над добавлением хелпера.
Теперь это так же просто, как:
client := redis.NewUnixClient("/tmp/redis.sock", "", -1)
aGrmbl, еще раз спасибо.
r := redis.NewClient(&redis.Options{
Network: "unix",
Addr: "/var/run/redis/redis.sock",
Password: "",
DB: "1",
})
Не забудьте проверить права доступа к файлам.
г := redis.NewClient(&redis.Options{
Сеть: "юникс",
Адрес: "/var/run/redis/redis.sock",
Пароль: "",
БД: «1»,
})
#
Самый полезный комментарий
Не забудьте проверить права доступа к файлам.