Posted by Chung Leong on 07/26/06 05:32
Joshua Ruppert wrote:
> There are four Microsoft SQL Server 2000 servers running behind a
> single IIS page server.
>
> As for an open transaction, that was my first thought too. I've
> systematically check for and clean up open transactions before each use
> and then at the end of each script. I did that because it was easy to
> do a global search and replace on the open transaction statements.
Are you using mssql_pconnect()? Try switching to mssql_connect(). That
would remove the one difference between FastCGI and CGI.
If you're using ADODB through COM, that could be the source of the
problem. PHP (version 4 at least) has a nasty habit of not releasing
COM objects correctly. After a while the leak builds up and the server
sort of dies.
> Thanks for the tip, though do you think FastCGI would respond properly
> to a process being killed through the back door like that, and replace
> it properly?
I think it will. Windows does a decent job cleaning up dead processes.
And to the controlling process, there isn't a huge difference between a
child exiting normally or abnormally.
What you should do though is to not run PHP as a system process. Go
into services and run change the login to IWebUser or something.
[Back to original message]
|