[ale] CentOS & PostgreSQL help re: TIME_WAIT

Reggie Euser reggie at busicast.com
Thu Jan 28 13:18:15 EST 2010


Zombie PostgreSQL processes in a "TIME_WAIT" state are consuming all 
available sockets on a web server I'm running. I've Googled & RTFM'ed but am 
still stumped.  Sure would appreciate any ideas.

I've recently migrated a PHP-based web app running against PostgreSQL from a 
single server running FreeBSD to a cluster consisting of:

-  two virtual machines, both running CentOS 5.4, Linux version 
2.6.18-14.10.1.el5 both with 3 Gb RAM allocated, both with two dual-core 
Intel processors allocated.

-  the web server is running Apache 2.2.14 & PHP 5.31.

-  the database server is running PostgreSQL 8.4.1, with pg_hba.conf set up 
to trust the webserver on port 5432.

-  both Apache & PostgreSQL are set to accept 225 max connections, otherwise 
the conf's are pretty much default.

-  web server is running OpenSSL for secure login, but serving general html 
pages without https.

-  tcp_keepalive_time in both is default 7200 seconds (which, as I read in 
various posts, etc., shouldn't really matter anyway, but...)

Various posts suggest that this could be a PHP programming issues, but as 
the problem just surfaced with the migration, I'm inclined to think it's 
probably either a PostgreSQL configuration issue or something related to the 
OS?

A cron job restarting Apache every hour is keeping the webserver alive, but 
I'd sure like a better solution...

Any ideas would be greatly appreciated...

Thanks!



More information about the Ale mailing list