gpt4 book ai didi

go - 使用 redis 架构 URL 连接到 redis 服务器

转载 作者:IT王子 更新时间:2023-10-29 02:36:15 27 4
gpt4 key购买 nike

我正在尝试连接到托管在这样 url 上的 Redis 服务器。

redis://h:asdfqwer1234asdf@ec2-111-1-1-1.compute-1.amazonaws.com:38799

我尝试使用 2 个库,但没有一个能够连接到服务器。我用过 redix.v3go-redis .

使用 redix.v3 我在使用上面的类似 URL 时遇到紧急错误。

go-redis 上,我收到一个关于 url 中冒号太多的错误,我已经尝试使用这个 url[redis://h:asdfqwer1234asdf@ec2-111-1-1-1.compute-1.amazonaws.com]:38799 在一些帖子中建议。

仍然没有运气。有没有人成功连接到 Redis 服务器?

Code and Error for redix.v3

func main() {
fmt.Println("running")
client, err := radix.NewPool("tcp", "redis://h:asdfqwer1234asdf@ec2-111-1-1-1.compute-1.amazonaws.com:38799", 10)
if err != nil {
// handle error
}

var fooVal string
err = client.Do(radix.Cmd(&fooVal, "SET", "foo", "hello"))
fmt.Println(err, fooVal)
}

错误:

panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x4f2b7e]

goroutine 1 [running]:
github.com/mediocregopher/radix%2ev3.(*Pool).getExisting(0x0, 0x0, 0x0, 0x0)
/home/aks/go/src/github.com/mediocregopher/radix.v3/pool.go:365 +0x4e
github.com/mediocregopher/radix%2ev3.(*Pool).get(0x0, 0x40aa78, 0x51afe0, 0x525120)
/home/aks/go/src/github.com/mediocregopher/radix.v3/pool.go:403 +0x2f
github.com/mediocregopher/radix%2ev3.(*Pool).Do(0x0, 0x7f6478467fd0, 0xc0000e2070, 0x0, 0x0)
/home/aks/go/src/github.com/mediocregopher/radix.v3/pool.go:440 +0x37
main.main()
/home/aks/hello.go:17 +0x19e
exit status 2

Code and error for go-redis

client := redis.NewClient(&redis.Options{
Addr: "redis://h:asdfqwer1234asdf@ec2-111-1-1-1.compute-1.amazonaws.com:38799",
Password: "", // no password set
DB: 0, // use default DB
})

// setup eviction policy on the redis client
client.ConfigSet("maxmemory", Config.RedisMaxMemory)
client.ConfigSet("maxmemory-policy", "allkeys-lru")

_, err := client.Ping().Result()

if err != nil {
log.Println("Redis: failed to connect", err)
} else {
log.Println("Redis: connected")
}

错误:

2018/10/08 10:57:29 Redis: failed to connect dial tcp: address redis://h:asdfqwer1234asdf@ec2-111-1-1-1.compute-1.amazonaws.com:38799: too many colons in address

最佳答案

您可以使用 ParseURL go-redis 中的函数

opt, _ := redis.ParseURL("redis://:qwerty@localhost:6379")
client := redis.NewClient(opt)

关于go - 使用 redis 架构 URL 连接到 redis 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52695724/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com