Skip to main content

Sendmail-Queues

Das Aufteilen eingehender bzw. zu versendender Mails ist für hochfrequentierte Mailserver nützlich. Sendmail verschickt Mails anhand ihrer Priorität, die aus folgenden Faktoren berechnet wird:

  • Größe der Email
  • Priorität (kann im Mailer eingestellt werden)
  • Anzahl der Empfänger
  • Wie lange ist die Mail schon in der Queue? Jeder Zustellungsversuch verringert die Priorität

Je höher dieser Prioritätswert ist, desto niedriger ist die Priorität mit der sendmail diese Mail behandelt.

Hat man nun ein hochfrequentiertes System und eine Mail konnte mehrmals nicht zugestellt werden, kann es durchaus sein, dass diese Mail lange Zeit in der Queue festhängt.

Abhilfe schafft hier die Konfiguration weiterer Mailqueues, die mit unterschiedlichen Wiederholungszeiten abgearbeitet werden. Hierzu wird in der sendmail.mc folgender Eintrag vorgenommen:

FEATURE(`queuegroup')
QUEUE_GROUP(`mqueue', `P=/var/spool/mqueue/mqueue, R=5, r=15, F=f, Interval=1h')
QUEUE_GROUP(`fast', `P=/var/spool/mqueue/fast, R=5, r=15, F=f, Interval=5m')
QUEUE_GROUP(`cno', `P=/var/spool/mqueue/cno, R=5, r=15, F=f, Interval=15m')

in access:

QGRP:default                    mqueue
QGRP:de                         fast
QGRP:wichtig.com                fast
QGRP:auchwichtig.org            fast
QGRP:com                        cno
QGRP:net                        cno
QGRP:org                        cno

danach mit „make“ (das sendmail-cf paket muss installiert sein) die Konfiguration neu bauen.

Die Standardgruppe ist mqueue, diese wird stündlich abgearbeitet. Hier wandern alle Mails rein, die auf keine der anderen Queues zutreffen. Alle Mails an .de-Adressen / wichtig.com und auchwichtig.org werden in die fast-Queue einsortiert und alle 5 Minuten abgearbeitet. Mails an .com/.net/.org-Adressen wandern in die cno-Queue und werden alle 15 Minuten abgearbeitet.