PHP ODBC 未关闭连接

PHP ODBC 未关闭连接

我刚刚在 stackoverflow 上问了这个问题,有人建议我也在这里问。

我有一个使用 ODBC 函数进行数据库访问的 PHP 应用程序。我的 DBA 最近发现该应用程序没有关闭其数据库连接,导致大量无效连接处于 TIME_WAIT 状态。

我们已经检查了代码,我在每个脚本中都调用了 odbc_close_all,而且即使我没有这样做,连接也应该在脚本结束时关闭。没有长时间运行的脚本会保留它们的连接

有谁见过类似的事情或者知道问题可能是什么吗?

PHP版本是5.1.4

在 Windows Server 2003 R2 Service Pack 2 上运行

MySQL 数据库

答案1

经过大量研究,我们偶然发现了几个来源,表明问题是 TcpTimedWaitDelay(感谢 VolkerK 提供的提示)。这很有帮助,但我们仍然看到在任何给定时间都有大约 30-40 个连接处于 TIME_WAIT 状态。

我们现在想知道是否有人能给出建议,说这种行为对于 Windows Server 来说是否正常,以及这是否是最好的,或者是否还有其他值得研究的途径。

谢谢

相关内容