[Postfixbuch-users] E-Mail-Architektur für 200k Mails / h

Stefan Förster cite+postfix-buch at incertum.net
Di Jul 28 23:42:25 CEST 2009


* Christian Wittwer <wittwerch at gmail.com> wrote:
> Eine spezielle Anforderung daran ist, dass darüber 200k Mails pro
> Stunde verschickt werden müssen.
> Bandbreite muss genügend da sein, ich rechne mal mit 40kb pro Mail
> (ich weiss, ist etwas viel).
> Also 200k * 40kb pro Stunde ergibt 18MB/s, was ja durchaus ok ist.

Das ganze müsste dann natürlich auch auf die Platten geschrieben und
von ihnen gelesen werden, aber ich denke, 18MByte/s gleichzeitig rein
und raus können selbst billige SATA-Raids heutzutage - zumindest
erinnere ich mich da ein einen vom I/O-Subsystem her recht "billigen"
Tivoli-Server, der noch deutlich mehr abgekonnt hat.

Wie auch immer, das sind 56 Nachrichten pro Sekunde, ich wäre ganz
schwer enttäuscht, wenn aktuelle Highend-Hardware damit ein Problem
hätte (jetzt mal davon ausgegegangen, daß Du keine inhaltliche
Filterung brauchst und keine DKIM-Signierung und auch sonst nix).

Immer lesenswert bei sowas:

http://www.postfix.org/TUNING_README.html#mailing_tips

Da ist eigentlich jeder einzelne Punkt Gold wert.

> Meine Frage ist mehr, worauf man bei so einem System achten muss.
> Gewisse Mail-Server sperren oder blockieren ja nach einer gewissen
> Anzahl von Verbindungen oder Mails/s.
> Wie kann man solche Limitierungen berücksichtigen, ohne das ganze
> System zu bremsen?
> Kann man mit Postfix domain-basiert die Zustellung drosseln?

Zum ersten Fall, daß Dich manche Anbieter einfach aussperren, wenn Du
ein gewissen Volumen überschreitest: Das kriegst Du technisch nur
schwer in den Griff (meiner Erfahrung auch dann nicht, wenn Du mehrere
IPs pro Server nutzst). Meistens muß man dann bei diesen Anbietern
durch ein paar Reifen hüpfen, um von denen explizit für solche
Aktionen freigeschaltet werden, oft darf man danach dann auch
dedizierte MXe des Anbieters verwenden, um sein Zeug einzukippen.

Eine kurze Beschreibung, wie man pro Ziel die Anzahl gleichzeitiger
Verbindungen, die Zustellungsrate etc. beeinflussen kann, findest Du
unter http://www.postfix.org/QSHAPE_README.html#backlog.

Von Leuten, mit denen ich zwar ob anderer Dinge inhaltlich nicht
übereinstimme, deren Erfahrung ich jedoch ernst nehme, habe ich jedoch
neulich erst gelesen, daß man wohl mit einem einzelnen
Auslieferungsprozess pro Stunde nicht realistisch mehr als 1000 Mails
zugestellt bekommen wird - Greylisting, Timeouts, langsame
Gegenstellen etc. Mit dem Default-Limit von 100 Prozessen kämst Du da
also nicht hin, ebensowenig mit einigen anderen Parametern, z.B. der
Größe der active-Queue.

Dein größtes Problem werden - wenn die Listen denn so versandt werden
- auch wirklich die großen Freemailer sein. Es gibt da welche, bei denen
erziele ich die besten Ergebnisse, wenn ich sie nicht mit mehr als
zwei parallelen Verbindungen anfahre (und als Ausgleich ein paar
tausend fehlgeschlagene Zustellungen ignoriere). "Beste" Ergebnisse
sind in dem Fall aber nicht wirklich toll.

Und so ganz untechnisch: Du solltest über die SLAs wirklich sorgfältig
drüberschauen. Wenn ein Drittel deiner Gegenstellen gerade down ist,
wirst Du die Delivery-Rate nicht halten können.


Ciao
Stefan
-- 
Stefan Förster     http://www.incertum.net/     Public Key: 0xBBE2A9E9
FdI #133: Linux - Das Windows98 unter den Unixen. (Heiko Schlichting)



Mehr Informationen über die Mailingliste Postfixbuch-users