go-redis和redigo连接池的区别
go-redis是自动管理,类似go/sql包的方式,在真正执行的时候从连接池取一个连接,执行完毕后放回去,对调用者透明。调用者如果手动关闭连接,连接不能被复用,表现上看就是redis服务器的tcp新建连接数特别多,而业务机器的timewait数量大。
redigo是手动管理,调用者需要明确获取一个连接,执行完毕再手动关闭。不及时关闭,会造成连接池泄露,表现上看就是redis的连接数持续增长
总结就是go-redis不要调用close,而redigo需要调用close,正好相反。

浙公网安备 33010602011771号