[Postfixbuch-users] Large Scale 100.000+ User

Robert Felber r.felber at ek-muc.de
Di Dez 18 09:41:15 CET 2007


On Mon, Dec 17, 2007 at 11:48:47PM +0100, Patrick Ben Koetter wrote:
> > Was sagt Policyd zu mehreren hundert Mio Mails /Monat und Greylisting - 
> > Datenbank? Reicht da ein MySQL (Cluster) noch?
> 
> Auf der Policyd ML nachfragen. Ich lese dort mit und habe von grossen
> Mailvolumina gehört, aber keine konkreten Zahlen zur Hand.

Alternativ gaenge auch ein einziger postgrey host und eine Abfrage
dessen auf den smtpds via check_policy_service inet:[ip.ad.re.sse]:10023

Wie auch immer ob nun clusterfs, sql etc - sobald remote sockets ins
Spiel kommen, baut er sich so oder so einen Flaschenhals. Seien es greylisting
Abfragen oder User-Abfragen (auch wenn Prozesse auf SMP Maschinen mehr
oder weniger parallel ablaufen, ist der socket und dazugehoerige layer
(im kernel) singlethreaded).

Im Falle von policyd und postgrey sieht das so aus:


local policyd
smtpd > local socket > policyd > remote sql socket > sql > cache/disk

remote policyd
smtpd > remote socket > policyd > local sql socket > sql > cache/disk

remote postgrey
smtpd > remote socket > postgrey/bdb > disk (evtl. fs cache)


Dadurch, dass postgrey in perl und policyd/sql in C ist, duerfte
sich das alles ein bisschen, relativieren. Ich bezweifel aber, dass man da
einen spuerbaren Unterschied merkt.

Optimieren kann er die greylisting Geschichte, indem er _selektives_
greylisting zum Schluss (bzw nach lokalen low-latency checks) macht.

Hinzu kommt, dass man dem postgrey ein --greylist-action=421 mitgeben kann
(tempfail + sofortiges close = weniger sinnlos reservierter smtpd prozesse), 
beim policyd muesste man das erst in den header files aendern und neu 
kompilieren.



-- 
    Robert Felber (PGP: 896CF30B)
    Munich, Germany



Mehr Informationen über die Mailingliste Postfixbuch-users