关于redis连接无法释放,资源被占满的问题
使用redis做数据同步的时候,经常遇到redis资源被占满,然后程序报错的问题。
但是我查看程序中所有使用redis的地方都有try catch ,在finally里面也都有释放资源,为什么还会被占满资源呢?
后来在网上看了一个帖子,是说在方法中有抛出异常的行为,而此时释放资源的代码没有被执行,所以这种情况下就会不停的创建新的连接直到连接池占满。
然后程序就崩了...
目前看到的有这么个原因,留下记录给自己一个方便。
使用redis做数据同步的时候,经常遇到redis资源被占满,然后程序报错的问题。
但是我查看程序中所有使用redis的地方都有try catch ,在finally里面也都有释放资源,为什么还会被占满资源呢?
后来在网上看了一个帖子,是说在方法中有抛出异常的行为,而此时释放资源的代码没有被执行,所以这种情况下就会不停的创建新的连接直到连接池占满。
然后程序就崩了...
目前看到的有这么个原因,留下记录给自己一个方便。