Am 10. Juni 2010 13:36 schrieb Patrick Ben Koetter p@state-of-mind.de:
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.
Das ist schon mal gut zu wissen.
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.
Eine Kopie der DNSBL ist auf jeden Fall eine gute Idee.
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.
So gesehen muss man Amavis in der master.cf auf smtp inet abstimmen?
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.
Also definiert maxproc in der master.cf wieviel gleichzeitige Verbindungen Postfix / Amavis erlaubt?
Wie oben schon angedeuted müsste man also beides aufeinander abstimmen?
z.B.
# service type private unpriv chroot wakeup maxproc command + args # (yes) (yes) (yes) (never) (100) # ================================================== smtp inet n - - - 60 smtpd
weiter unten:
amavisfeed unix - - n - 60 lmtp
So müsste das dann aussehen? Wenn man bei smtp inet n nichts definiert hat akzeptiert Postfix Standard 100 oder 200 gleichzeitig?
Wenn man dann bei amavis allerdings unten nur 2 angegeben hat wäre das ja so gesehen ein Problem wenn wirklich mal zu viele gleichzeitig reinkommen.
Also stimmt man den Wert von smpt inet n und amavisfeed aufeinander ab?
Chris