我试图find一个干草堆型的问题。 无法在testing服务器上重新创build它。
症状是遗留在ESTABLISHED状态的TCP连接,因此没有被closures。
环境是CentOS上的PHP / Apache / Postgresql
在正常操作下,ESTAB数据库连接数在20以下,而活动的HTTPD进程可以攀升到400的范围。
在故障情况下,ESTAB数据库连接峰值达到configuration的限制值1000,而HTTPD处理计数不会发生显着变化
要确认TCP连接与HTTPD相关,我使用了netstat -nop,然后计算build立到数据库的数量。
同时我用ps -ef来查看活动HTTPD的数量
我还没有能够赶上失败,但还没有尝试对HTTPD进行分析。
对我来说,TCP连接应该在HTTPD退出的情况下结束。 我研究过TPC孤儿,但似乎只适用于连接尝试closures。
日志文件似乎没有任何与此问题相关的活动。 我正在设定较高的日志级别,以查看更详细的信息是否会给我一些线索。
当拥有进程消失时,是否有其他人进入TCP连接,不会closures?