TCPの代わりにUNIXソケットを使用して接続することは可能ですか?
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())
}
ほとんどの人がUNIXソケットを介してクライアントプロセスの近くでRedisを実行するため、NewClientUnix *ヘルパーメソッドを追加すると便利です。
gurre、申し訳ありませんが、私はどういうわけかあなたの質問を逃しました。
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",
})
ファイルの権限を確認することを忘れないでください。
r:= redis.NewClient(&redis.Options {
ネットワーク:「unix」、
追加: "/ var / run / redis / redis.sock"、
パスワード: ""、
DB:「1」、
})
#
最も参考になるコメント
ファイルの権限を確認することを忘れないでください。