Schneller Mailversand
Aus Melin DokuWiki
Es gibt verschiede Methoden die Versandgeschwindigkeit von Melin zu steigern. Die effektivste Methode um die Performance praktisch beliebig zu steigern ist die Verteilung eines Mailings auf verschiedene Server.
Statt der Emailsender-Plugins im Versandworkflow schreibt man die Mailingpakete in die Datenbank. Das GridOut-Plugin bietet hierzu die Option "Sync/MMDB". In dem obigen Workflow wird das Mailing durch den LoadBalancer in drei Pakete aufgeteilt und anschließend wird jedes Paket in die Datenbank geschrieben. Als Channel gibt man zum Beispiel SMTP1 bis SMTP3 an - das Feld Channel beim GridOut ist vergleichbar mit einer Röhre in die man Daten schiebt.
Wichtig ist daß jedes GridOut in einen eigenen Channel schreibt.
In diesem Fall gibt es drei separate Versandserver. Auf jedem Server läuft nur der Daemon, eine Oberfäche ist nicht notwendig. Am einfachsten kopiert man von der Hauptinstallation nur den Ordner "msite" mit allen Unterordnern und passt die Konfigurationsdateien in msite/demon/config an. Dann erstellt man im Hauptsystem die drei Versandworkflows (hier zum Beispiel F1 bis F3) und verteilt diese auf die drei Zielsysteme (Ordner: msite/demon/jcomm).
Der Workflow kann so aussehen:
Das GridIn-Plugin (hier SMTP1) ist wieder auf die Datenbank eingestellt und auf jeweils einen Channel. So kommen die Daten auf den jeweiligen Zielservern an und werden dort weiter verarbeitet. Wichtig ist der anschließende Rückkanal: wenn die Mailings auf den einzelnen Server verarbeitet sind müssen die Pakete wieder zurück auf das Hauptsystem damit das Mailing nach Versandende als abgeschlossen markiert werden kann.
Den Versandfortschritt kann man dennoch sehen - direkt nach Versandstart erscheint das Mailing in der Versandstatistik mit einem Fortschrtittsbalken der auf Basis des Versandlogs (LOG_SENDMAIL) in Echtzeit ermittelt wird.
