我继承了一个 .net/web 服务项目,它存在严重的连接对象泄漏问题。奇怪的是,直到最近,这个项目一直在生产中运行没有问题。我想垃圾回收器通常会快速清理它们。但是,在一个客户站点的一个 web 服务器在负载较重时开始耗尽连接。
显然,解决方案是修复所有的连接泄漏问题,但这不会很快发生。我甚至不能更改连接字符串中的最大池设置,因为连接字符串是由应用程序动态构建的。这需要进行代码更改,而这需要经过一个不快速的过程。
在代码更改发生之前,我能在服务器上做些什么来缓解这个问题吗?
为什么这只是在一个位置出现问题,而且还是一个较小的位置?如果我知道这个问题的答案,我可能能够找到一个临时的解决方法。
实际上,问题可能是其他完全不同的问题,导致了连接池问题吗?例如,也许服务器上的负载均衡出了问题或者有错的 web 服务器正在出现问题。