Black Friday = Pricewatch Bekijk onze selectie van de beste Black Friday-deals en voorkom een miskoop.

[phpmailer] Mailen via Gmail-smtp gaat traag

Pagina: 1
Acties:

  • StephanVierkant
  • Registratie: Mei 2003
  • Laatst online: 05-11 23:08
Om de nieuwsbrief van mijn hockeyclub te versturen gebruik ik phpmailer i.c.m. de smtp-server van Gmail. Ik gebruik op de domeinnaam Google Apps for Domain. Het voordeel hiervan is dat alle verstuurde berichten bij de Sent Items komen te staan van mijn eigen account.

Nu ik echter 130 leden een berichtje wil sturen, is 'ie 10 minuten bezig. Het werkt prima, maar erg snel is het niet.

Hoe zorg ik dat het script toch sneller werkt? Ik stuur nu iedereen een aparte mail, adressen in de (b)cc zetten is geen optie, omdat ik de mails personaliseer ('beste $naam, etc.). Een andere smtp-server gebruiken is misschien ook een optie, maar echt een oplossing is dat ook niet.

Ik heb al ingesteld dat hij de smtp-connectie pas moet afsluiten als alles verstuurd is. Dit maakt wel een beetje verschil, maar 10 minuten is natuurlijk nog steeds erg lang. Hoe kan ik zien waar hij zo lang mee bezig is?

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
    include("class.phpmailer.php");
    include("class.smtp.php");
    
    $mail=new PHPMailer();
    
    $mail->IsSMTP();
    $mail->SMTPKeepAlive  = true;                  // keep alive
    $mail->SMTPAuth   = true;                  // enable SMTP authentication
    $mail->SMTPSecure = "ssl";                 // sets the prefix to the servier
    $mail->Host       = "smtp.gmail.com";      // sets GMAIL as the SMTP server
    $mail->Port       = 465;                   // set the SMTP port 
    
    $mail->Username   = "nieuwsbrief@hcbedum.nl";  // GMAIL username
    $mail->Password   = "**********";            // GMAIL password
    
    $mail->From       = "nieuwsbrief@hcbedum.nl";
    $mail->FromName   = "Hockey Club Bedum";
    $mail->Subject    = $subject;
    $mail->Body       = nl2br(htmlentities($tekst));
    $mail->AltBody    = "Je kunt deze mail helaas niet openen, omdat je e-mailprogramma geen HTML ondersteunt.";
        
    $mail->IsHTML(true); // send as HTML
    
    $query = mysql_query("SELECT * FROM `leden` WHERE email != ''");
    while($list = mysql_fetch_object($query))
    {
        $mail->ClearAddresses();
        $mail->AddAddress("$list->email");
        if(!$mail->Send())
        {
            die($mail->ErrorInfo);
        }
    }
    
    echo "<p>Het bericht is naar alle leden gestuurd!</p>";
    $mail->SmtpClose();

  • MrOizo2005
  • Registratie: September 2003
  • Laatst online: 15-11 18:18
Je kan checken waar die is door de output weg te laten schrijven in een txt file of in een database,
dan zie je hoeveel records die per minuut doet, of waar het blijft hangen.

[ Voor 7% gewijzigd door MrOizo2005 op 12-08-2008 16:33 ]

Also known as Oizopower | When Life Gives You Questions, Google has Answers


  • StephanVierkant
  • Registratie: Mei 2003
  • Laatst online: 05-11 23:08
Ik kan ook zien dat 'ie de mails verstuurt, omdat ze direct in mijn Sent Items komen te staan. Over alle mailtjes doet 'ie even lang.

  • swtimmer
  • Registratie: Augustus 2006
  • Laatst online: 16-10 10:49

swtimmer

Ontrafelt het leven!

En wat gebeurt als je een andere SMTP even probeert? Zoals die van je host? Is dat sneller?

Kan me nl. voorstellen dat google iets ingebouwd heeft waardoor je niet zomaar een spam run via hun SMTP kan versturen.

  • StephanVierkant
  • Registratie: Mei 2003
  • Laatst online: 05-11 23:08
swtimmer schreef op dinsdag 12 augustus 2008 @ 16:38:
En wat gebeurt als je een andere SMTP even probeert? Zoals die van je host? Is dat sneller?

Kan me nl. voorstellen dat google iets ingebouwd heeft waardoor je niet zomaar een spam run via hun SMTP kan versturen.
Die van mijn host komt in de spambakken van Gmail, en bij Hotmail komt 'ie helemaal niet aan. Dat is dus geen optie. Die was wel een stukje sneller.

Is er iemand die goede ervaringen heeft?

Verwijderd

Grote kans dat Google je rate limit die je er door hun servers heen kan sturen daar ga je niks aan doen behalve zelf een mailserver te gaan draaien of via een andere te versturen.

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 23:02

TeeDee

CQB 241

Stephan4kant schreef op dinsdag 12 augustus 2008 @ 16:50:
[...]

Die van mijn host komt in de spambakken van Gmail, en bij Hotmail komt 'ie helemaal niet aan. Dat is dus geen optie. Die was wel een stukje sneller.
Welke host? Die van je ISP of de host waar je bijvoorbeeld je website hebt. Het is imo het (uiteraard nadat alle headers goed gezet zijn en alle spam-regels redelijkerwijs weggewerkt zijn) pakkie aan van je provider / webhost om te zorgen dat het niet in de spam terecht komt.
Is er iemand die goede ervaringen heeft?
Ervaringen met wat?

Ik kan me trouwens voorstellen dat Gmail een soort van vertraging ergens ingeplaatst heeft.

Nog ter verduidelijking:

Stuur een mail via je Webhost en bekijk/vergelijk de headers. Meten is weten.

[ Voor 6% gewijzigd door TeeDee op 12-08-2008 16:57 ]

Heart..pumps blood.Has nothing to do with emotion! Bored


Verwijderd

Hmmm ik heb net naar de policies van ze gekeken en er staat nergens dat ze je doorstuur rate limiteren op http://www.google.com/mail/help/program_policies.html

Wat wel zo is dat je niet meer dan 100 mensen mag mailen, geen attachments groter dan 10 MB etc. Dat staat hier uitgelegd voor je!
Pagina: 1