tobydeh Posted October 27, 2006 Share Posted October 27, 2006 HI Guys, I am building a newsletter system for our site at work and i cant seem to send all the emails without the page/code falling over.We have 850,000 registered users so its not an easy task.this is my current situation:Render Email Template (Only do this once)Connect to SMTPSay Hello, Prepare server for data( Select Current Chunk of 500 users from the DB ( Loop through chunks of 500 emails from the db Replace User-Specific Tags inside email body. update row email_sent = true ))Close SMTP ConnectionAt the moment i can only reach around 50,000 emails before the page stops dead.I am utilizing various sleep() calls to try an prevent a timeout, and i have set the PHP max_timeout / memory settings etc.The site uses Mod_rewrite (built using CakePHP) so i cannot call the script from shell using /usr/bin/php/... as it will not start cakes Dispatch system etc, and will not initialize my DB Models.Would it help to call the script from exec()? Calling exec('curl -s /path/to/my/file/')?Does the Apache "Timeout" Setting have any bearing on what i am doing??I checked out SendStudio's source code, and it seems to do the following...set_time_limit(0)<<Start firing emails>>they do not appear to be doing anything spectacular to avoid timeouts. I Have used send stduio before to email around 340,000 users without any problems so i am most confused.Any help / knowledge in this area would be great as i am absolutely up **** creek without a paddle!F.Y.I The site is on a Dedicated Linux Box at RackSpace, using PHP 4.Kinds Regards in advance,Toby de Havilland. Link to comment https://forums.phpfreaks.com/topic/25362-email-large-user-list-and-avoid-timeout-solved/ Share on other sites More sharing options...
Caesar Posted October 27, 2006 Share Posted October 27, 2006 Spam? :-/ If it is, and these people do not want your emails, you are a lowlife scumbag and I hope you get throat cancer. If not, then disregard. ;-) Link to comment https://forums.phpfreaks.com/topic/25362-email-large-user-list-and-avoid-timeout-solved/#findComment-115639 Share on other sites More sharing options...
tobydeh Posted October 27, 2006 Author Share Posted October 27, 2006 haha, No of course it isnt spam...If it was spam i would get a crappy dektop app and import my CSV of dodgy emails.It is a Newletter App to intergrate into our website at work. It is a large onle gaming website with many users. All of whom have accepted the Newsletter.So.. no more rudeness please... Link to comment https://forums.phpfreaks.com/topic/25362-email-large-user-list-and-avoid-timeout-solved/#findComment-115642 Share on other sites More sharing options...
tobydeh Posted October 28, 2006 Author Share Posted October 28, 2006 >>>>>>>>>>>>>>>>SOLVED<<<<<<<<<<By creating a clever hack using flush(), ob_flush(), ob_end_flush(),ob_get_level() and ob_start() i was able to push content to tr browser to stop it thinking the page was dead, i also managed some clever calls to free up some memory and then..... Smiles all round :0) Link to comment https://forums.phpfreaks.com/topic/25362-email-large-user-list-and-avoid-timeout-solved/#findComment-115668 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.