go-redis和redigo连接池的区别

go-redis是自动管理,类似go/sql包的方式,在真正执行的时候从连接池取一个连接,执行完毕后放回去,对调用者透明。调用者如果手动关闭连接,连接不能被复用,表现上看就是redis服务器的tcp新建连接数特别多,而业务机器的timewait数量大。

redigo是手动管理,调用者需要明确获取一个连接,执行完毕再手动关闭。不及时关闭,会造成连接池泄露,表现上看就是redis的连接数持续增长

总结就是go-redis不要调用close,而redigo需要调用close,正好相反。

posted @ 2022-08-25 20:10  Yii  阅读(732)  评论(0)    收藏  举报