phpbar.de logo

Mailinglisten-Archive

[php] Frage | Newsletter | Fehlerhandling

[php] Frage | Newsletter | Fehlerhandling

Henning Heil lists at h-quadrat.com
Die Jan 6 18:31:55 CET 2004


++++ Olaf Gleba wrote on 06.01.2004 15:58 ++++

>Hallo,
>
>des Pudel`s Kern:
>
>Angenommen, ich baue mir ein kleines Frontend, die die gängigen
>Newsletterfunktionalitäten abbildet; ich nutze als Applikation zum
>eigentlichen collecten und senden die pear::mail Klasse + Ableger und die
>selbstgeschriebenes zum DB in/out etc..
>
>Wiederum angenommen, ich habe mind. 3000 Abonnenten in der DB, an die
>verschickt werden soll.
>
>Kann ich diese 3000 Abonnenten, also Adressaten, innerhalb eines Rutsches
>mit dem mail::send auf die Reise bringen, ohne das es hier zu nicht
>kontrollierbaren Fehlern/Timeouts etc. kommt?
>Oder empfiehlt es sich, hier in kleineren Paketen zu arbeiten ?
>
>Mein Problem konkret ist: Mir fällt momentan nichts sinnvolles ein, wie man
>die Last im Test simuliert, die durch Realbedingungen entstehen würde (ich
>kann ja schlecht die schon bestehenden Adressen nutzen).
>
>Das sind Erfahrungswerte, die ich einfach nicht habe.
>
>Wie macht ihr das?
>
>gruss und danke
>Olaf
>
>  
>
Hallo Olaf!

Habe gerade so ein Ding fertiggestellt, Du kannst es kaufen ;-)

Spass bei Seite, also ich hatte einen ganz guten Draht zum Hoster, das 
vereinfacht das testen natürlich etwas. Ein paar Dinge die dabei 
aufgefallen sind:

1) wie viele mails Du auf einmal senden kannst, hängt natürlich stark 
von der maximalen Ausführungszeit des Skriptes ab
2) um das senden zu optimieren empfiehlt es sich, smtp keep-alive zu 
nutzen - spart Unmengen von Zeit, da die Verbindung nicht jedes Mal neu 
hergestellt wird (ich habe phpmailer benutzt, weiss nicht ob das mit 
pear geht - sollte aber?!)
3) 3000 mails sind etwas viel für einen Skriptdurchlauf, einfach das 
Skript sich selbst mit irgend einem Parameter aufrufen lassen, der 
besagt an welcher Position weiter gemacht werden soll. Bei z.B. 500 
mails pro Skriptdurchlauf kannste ja recht schnell ne ganz gute Anzahl 
erreichen.
4) zum testen mit grossen, bestehenden Adressdatenbeständen: einfach 
alles nach dem @ abschneiden und durch Deine eigene Domain ersetzen; auf 
Deinem mailserver einen catch-all-account einrichten und schon rauscht's 
alles da hin. Wenn Du zu wenig Adressen hast, kannste auch noch n paar 
random-Adressen dazugenerieren.
5) mit diesem grossen Datenbestand kann man sich dann auch an die Zahl 
herantesten, die in Deiner Umgebung der '500' von Punkt drei entspricht.

Viel Spass dabei,

Henning


php::bar PHP Wiki   -   Listenarchive