如何解决wsarecv连接错误?Golang/Heroku redis



我正在尝试将我的go应用程序连接到heroku redis数据库。使用此代码:

(使用"github.com/go redis/redis/v8"(

opt, err := redis.ParseURL("redis://:PASSWORD@AWS-HOST:15670/0")
if err != nil {
panic(err)
}
rdb := redis.NewClient(opt)
usu := rdb.Get(ctx, userID)

但我得到了这个错误:

get61d4bb472db95c17de8c:wsarecv:现有连接被远程主机强制关闭。

HEROKU CREDENTIALS

我感谢任何帮助!

尝试关闭RDB持久性。如果仍然出现相同的错误,则表示Heroku存在问题。

RDB经常需要分叉((,以便使用子进程在磁盘上持久存在。如果数据集很大,Fork((可能会很耗时,并可能导致Redis如果数据集很大,CPU性能也不好。

为了更好地理解,请参阅此链接:https://redis.io/topics/persistence

请确保,您为连接创建了一个实例并在任何地方使用它,它是线程安全的。

还要确保:

启用TCP保持活动->它将防止意外的连接关闭事件。

您可以参考此链接:https://redis.io/topics/clients

增加opt.MaxRetries

最新更新