i've got a command-line php script that i've been using to deliver large 
amounts of e-mail.  originally it relied on mail() to deliver the 
messages but i could easily overload sendmail and bring the box (redhat 
7.1) to a crawl.  so i am now using the various network functions to 
speak smtp directly from the script.  i seem to be having a problem with 
an excessive number of tcp connections that eventually brings down the 
machine.

i have attempted a semi-multi-threaded approach by spawning off 
additional copies of the script to deliver more mail simultaneously.  so 
i might have 100 copies of the script running at the same time.  and 
this was after dumping a million messages into my mysql-based mail 
queue.  things may run okay for a few hours...maybe even a day...but 
then doing a netstat shows over 10k tcp connections.  and the only way 
i've found to fix the problem is to reboot the machine.

thinking that i was attempting too many connections at the same time, i 
throttled down the number of threads to 25.  this slowed down my mail 
delivery of course.  and it allowed the machine to stay up longer.  but 
i eventually ran into the same problem after maybe two or three weeks. 
just before it died, i was showing over 30k tcp connections.

are they any known issues in the php networking code that would cause 
this to happen?  as far as i know, i should never have more than 25 tcp 
connections open.  but i'm not sure if they are not being closed 
properly or what.

-- 
-jr


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to