[postfix-users] Amavis und ausgehende Mails

Patrick Ben Koetter p at state-of-mind.de
Do Jun 10 13:36:49 CEST 2010


* Christopher Stolzenberg <postfix-users at de.postfix.org>:
> Am 9. Juni 2010 10:22 schrieb Patrick Ben Koetter <p at state-of-mind.de>:
> 
> > 1.000 msg/min macht Postfix im Vorbeigehen. Im Detail müsstest Du mal
> > definieren mal was da getan werden muss. Nur Annehmen? Nur Senden?
> > Viren-Filtern? Spam-Filtern?
> 
> Annehmen durch Amavis (spamassassin, pyzor, clamav) und dann z.B. an
> einen anderen Server (Mailbox Server) weitergeben.
> 
> Mir ist aufgefallen wenn man z.B. von einer Mailinglist wie die LKML
> mal 30-40 Mails auf einmal reinkommen das dann die Systemload unter
> Linux schon ganz ordentlich hochgeht... Wenn ich mir dann vorstelle
> das da 1000 Mails gleichzeitig reinkommen müsste es doch theoretisch
> einen Stau geben? Wie verhält sich dann amavis?

Generell gilt: Amavis sollte nie mehr Postfix mail clients sehen, als Postfix
selbst mail annehmen kann.

Wenn Du 1.000 gleichzeitige Mails bearbeiten willst, mußt Du das mit
LoadBalancer verteilen. 1.000 Nachrichten pro Minute sind im Schnitt 16.666
Nachrichten pro Sekunde. Das sollte ein handelsüblicher Server locker (!)
abkönnen.

Deine Bottlenecks in diesem Fall ist die I/O Deines Systems und die
amavis-Aufgaben, besonders alle netzbasierten Prüfungen wie DNSBL und pyzor,
weil Du da mit Sicherheit in Latenzen auf DNS-Serverseite reinrennst.

Das kann man mit lokalen Caches eine Weile abfangen, dann muss man den Service
irgendwann zahlen und schlussendlich stellt man sich eine Kopie der DNSBL in
die DMZ.

Um Deine Frage mit amavis zu beantworten: amavis hängt hinter Postfix. Postfix
gibt einen 4xx Fehler raus und schickt den Client weg, wenn keine
amavis-Verbindungen frei sind.

> Wieviel Mails (SMTP Connections) kann Postfix standardmäßig überhaupt
> gleichzeitig bewältigen?
> 
> Auf eurer Webseite unter
> http://postfix.state-of-mind.de/patrick.koetter/amavisd-new/#basiskonfiguration_transport
> wird maxproc erwähnt. Allerdings habt ihr unter amavisfeed unix gar
> keinen -o maxproc Wert konfiguriert... ist der default Wert von 2
> nicht etwas gering? Wenn mal 100 Mails gleichzeitig reinkommen und
> amavis vorübergehend keine Mails annimmt und der Absender einen Fehler
> bekommt ist das natürlich nicht so schön.

Der default von 2 ist für Privatuser in der Regel völlig ausreichend. Auf
Produktionssystemen bei Kunden haben wir oft 60 Prozesse und mehr am Start.
Die sind nicht aus der Luft gegriffen, sondern das Resultat von errechneten
Lastszenarien und Test mit Lastgeneratoren für die jeweiligen Lastszenarien.

Wer selber testen will kann die Postfix-Tools smtp-sink und smtp-source, sowie
postal und mstone hernehmen.

p at rick


-- 
state of mind
Digitale Kommunikation

http://www.state-of-mind.de

Franziskanerstraße 15	   Telefon +49 89 3090 4664
81669 München              Telefax +49 89 3090 4666

Amtsgericht München        Partnerschaftsregister PR 563


Mehr Informationen über die Mailingliste postfix-users