Serializar o filtro de correio no Postfix + Maildrop

1

Eu tenho um servidor Postfix, que usa o Maildrop como filtro. Os filtros enviam dados da mensagem para um banco de dados. No momento, tenho alguns erros estranhos: alguns e-mails serão entregues, mas o processamento levará mais de 30 minutos. Existe um erro

 Command time limit exceeded:
"/usr/local/bin/maildrop -d ${USER}". Command output: maildrop: Timeout
quota exceeded.

que ocorre em tais mensagens. O servidor recebe ca. 20 e-mails por hora, por isso não é um servidor de alto desempenho.

Eu uso um script base, que examina uma pasta, onde armazenei vários scripts de filtro, que são incluídos dinamicamente no script base

Este é o filtro geral:

cc "|scripts/buildfilters"
include "mailfilters/filters"

O script buildfilters Shell combina todos os arquivos 00_name .. 99_name no diretório mailfilters :

TMPFILE=$(mktemp)
ls -1 mailfilters/* | grep "^.*/[0-9]\{2,\}_.*" | sed -e 's/^/include "/' | sed -e 's/$/"/' > $TMPFILE
mv $TMPFILE mailfilters/filters
chmod 600 mailfilters/filters

Assim, pode ser que essa construção tenha problemas no processamento paralelo de mensagens. Um segundo processo do Maildrop pode encontrar um arquivo danificado mailfilters/filters . Existe a possibilidade de serializar o processamento de mensagens?

    
por arothe 09.11.2018 / 15:51

0 respostas

Tags