[Postfixbuch-users] postgrey versus sqlgrey

Stefan Förster cite+postfix-buch at incertum.net
Mi Okt 15 08:35:23 CEST 2008


* Peer Heinlein <p.heinlein at heinlein-support.de> wrote:
> Dito bei der Aktualität. Es geht hier nicht um irgendeinen "aktuellen"
> Spamfilter. Beide Systeme greylisten -- und entweder die Software läuft,
> oder sie läuft nicht.

Das ist so natürlich zu einfach ausgedrückt - und sei es nur, daß
beide Pakete mit einer aktuelleren oder weniger aktuellen Whitelist
kommen, daß sie sich gegen modernere Datenbank-Libraries bauen lassen
etc. Spielt alles keine so große Rolle, aber erwähnen sollte man das
schon.

> Performance? Keine Ahnung, spielt eh keine Role in diesen Größenordnungen
> vergiß. es.

Ich hatte hier vor Ewigkeiten mal meine Erfahrungen mit der
Log-Bereinigung von postgrey mitgeteilt - ist bestimmt noch im Archiv.
Mit einer "echten" SQL-DB wird sowas nicht passieren (hoffentlich) -
weswegen mir damals geraten wurde, die 2.x-alpha von postgrey zu
testen, welche auf SQlite basiert (ich habe das bis heute nicht getan
- dann gibt's halt einmal pro Tag auf einem MX ein paar 4xx-Fehler,
was solls's, dafür habe ich mehr als einen).

> Ergebnis: Der Unterschied ist, daß das eine eine SQL-Datenbank nutzt, daß
> andere Berkeley-DB-Datenbanken. Fertich.

Was ein verdammt großer Unterschied ist. Wer wirklich viele
Verbindungen auf einem MX hat (mir ist das so ab ca. 6 Millionen pro
Tag aufgefallen) und z.B. SQLgrey mit einem pgsql-Backend < 8.3 am
Start hatte, der wird sich gefreut haben, wie die Performance in den
Keller ging, weil pgsql mit den vielen Einfüge- und Löschoperationen
nicht besonders gut klargekommen ist. Den Overhead für das Parsen der
Anfragen etc. kann man sich meiner Meinung nach auch schenken, oder,
im Klartext: Greylisting in einer SQL-Datenbank zu machen (full-blown,
ich rede nicht von sqlite) halte ich für eine ziemlich beknackte Idee.

> Für mich stellt sich die Frage, wieso man eine SQL-Datenbank auf einem
> Mailrelay installieren sollte.  Und da ich dafür keinen Grund sehe *UND*
> weil postgrey bekanntermaßen geil stabil ist und prima geht, wüßte ich
> nicht, wieso man bitte nicht postgrey einsetzen sollte.

Es gibt ja mit "gross" einen relativ neuen Greylisting-Dämon (und um
das mal à la Peer auszudrücken: Der hat einen fett geilen
mathematischen Hintergrund), der sich zumindest über zwei MXe
synchronisieren kann (und eine Erweiterung ist geplant) und keine
Probleme mit dem Sauberhalten seiner Logs hat.

Bleibt festzuhalten: Dem Postgrey-Entwickler ist seine Software
mittlerweile so egal, daß er seit Monaten eine 2.x-Alpha rumgammeln
lässt - und dan Berkeley DB hat der Dämon massive Probleme, große
Logdateien aufzuräumen, das sind dann u.U. mal viele Minuten Pause.
Wenn das nacht's passiert und man nur Mails aus der gleichen Zeitzone
bekommt, ist das aber egal, bei mehr als einem MX sowieso.

SQLgrey braucht eine Datenbank und verfolgt die bescheidene Idee, die
Tupel via SQL zu speichern und abzufragen, handelt sich damit also den
ganzen Overhead zwecks Parsing etc. ein. Außerdem ist es hochgradig
untrivial, SQL-Datenbanken so einzurichten, daß sie mit den Daten
effizient klarkommen (für echte Mailvolumen, s.o.). Wer eh schon eine
DB hat und sich mit der auskennt, der kann aber gerne SQLgrey benutzen
- mit all den Vor- und Nachteilen.

Beide haben Ecken und Kanten und ich kann mich Peers Meinung, daß
Postgrey einfach nur geil funktioniert, nicht ganz anschließen - er
ist aber zumindest der geringere Schmerz im Allerwertesten.


Ciao
Stefan
-- 
Stefan Förster     http://www.incertum.net/     Public Key: 0xBBE2A9E9
FdI #283: whoami - Whoami ist nur was für Leute mit Alzheimer! (Begründung von
Microsoft Deutschland für das Entfernen des Befehls aus Windows NT)



Mehr Informationen über die Mailingliste Postfixbuch-users