Beitrag für die Doku ist nun in Arbeit. Hier zusammengefasst was man tun muss:
PHP-Code:
# config/config.yaml
framework:
messenger:
transports:
async: doctrine://default
routing:
'Symfony\Component\Mailer\Messenger\SendEmailMessage': async
Danach Application Cache neu aufbauen und einmalig folgendes ausführen (ist optional):
Code:
vendor/bin/contao-console messenger:setup-transports
Das erzeugt eine Tabelle namens messenger_messages, wo Symfony Messenger die E-Mails abspeichert. Nun kann die Messages Queue bspw. folgendermaßen einmalig abgearbeitet werden:
Code:
vendor/bin/contao-console messenger:consume --time-limit=1
Will man pro Aufruf nur eine E-Mail verarbeiten, dann zB so:
Code:
vendor/bin/contao-console messenger:consume --limit=1 --time-limit=1
Das könnte man in einen minütlichen Cronjob einbauen - somit würden nur mehr maximal 60 E-Mails pro Stunde versendet werden. Heißt aber auch, dass reguläre E-Mails (aus Formularen etc.) erst verspätet gesendet werden.
Lesezeichen