[Postfixbuch-users] Filesystem Performance

Stefan Förster spameimer at stefan-foerster.de
Sa Nov 3 11:45:44 CET 2007


* "Dr.Peer-Joachim Koch" <pkoch at bgc-jena.mpg.de> wrote:
>  "find . -type f -exec cat {} > /dev/null \; "
> dauert auf dem Mailserver ~110 sek.
> Auf einem neu angelegten Dateisystem für die doppelte Anzahl
> 23sek. (auf einem langsameren Raid !).
> 
> Gut, der Mailserver läuft jetzt 4 Jahre und kein Filesystem wird
> "schneller" im laufe der Zeit.
> Es ist sicherlich auch ein Problem des cyrus (jede Mail == eine Datei).
> 
> Trotzdem würde mich interessieren, ob jemand einen Weg gefunden hat
> im laufenden Betrieb dieses Problem anzugehen.

Wir sind Mitte 2006 in ein Problem gelaufen, von dem ich denke, daß es
genau das selbe ist wie bei Euch - zumindest klingen die Symptome
identisch:

Bei uns war damals ein Volume betroffen, auf dem eine große Zahl
temporärer Dateien erstellt und wieder gelöscht wurden. Nach drei
(zwei?) Jahren hat auf dem entsprechenden Volume selbst der Befehl
"ls" oder ein einfaches "stat" auf eine Datei spürbar länger gedauert
als auf einem frisch angelegten Filesystem. Wenn Du das selbe Problem
hast, dann sollte nicht nur Dein obiger Befehl (der übrigens nicht so
der Bringer zum Messen ist, lieber, bei vorhandenem GNU-Userland sowas
wie

find . -type f -print0 | xargs -0 cat...

verwenden, Parallelität und so...) langsamer sein, sondern vor allem
auch Dinge wie ein "ls -lR" oder nur der find - sprich, der Zugriff
auf die Nutzdaten einer gegebenen Datei sollte schnell gehen (scheint
bei Dir der Fall zu sein, mit "dd" hast Du ja getestet), der Zugriff
auf die Metadaten jedoch langsam.

Ein Kollege hat sich damals der Sache angenommen und nach einem
längeren Mailaustausch mit irgendwem von IBM in Böblingen, den er
kannte, hat er dann dafür gesorgt, daß Verzeichnisse, die keinerlei
Nutzdaten mehr enthielten, komplett geleert werden. Also sprich, auf
Dein Szenario bezogen und ohne Deinen IMAP-Server zu kennen, wenn in
einem Mailordner nur noch die Übersichtsdaten oder der Cache des
IMAP-Servers liegen (aber eben keine Mails mehr), dann auch diese
Dateien komplett löschen. Das ganze hat das Problem damals bei uns
stark abgemildert, jedoch nicht gänzlich behoben, und ich weiß auch
nicht, in wie weit diese Lösung für Dich anwendbar ist, der "Fix" war
damals recht spezifisch für unsere Datenstruktur. Was bei mir hängen
geblieben ist, war, daß JFS wohl auf einer per-directory-Basis Probleme
mit den (btree(?)-)Indizes hat, und der einzige Weg, das Neuerstellen
dieser Indizes zu triggern, das komplette Leeren eines Verzechnisses
ist.

Leider kann man den besagten Kollegen nicht mehr befragen, da er kurz
danach einem Herzinfarkt erlegen ist. Wenn Du willst, kann ich aber am
Montag mal seine Mailfolder zurücksichern und dort nach "JFS" suchen -
ich bin sicher, er hätte nichts dagegen.


Ciao
Stefan
-- 
Stefan Förster     http://www.incertum.net/     Public Key: 0xBBE2A9E9
FdI #205: BSD - Berkeley Spongiform Derivative (Felix Deutsch)



Mehr Informationen über die Mailingliste Postfixbuch-users