Nossa organização tem vários servidores que geram e enviam muitos e-mails (não somos spammers, é um e-mail legítimo para os usuários que solicitaram isso). O Exim nessas máquinas é configurado para tentar apenas entregar emails uma vez e, se falhar, entregar o email a um servidor de hub de estouro que continuará tentando. Acabei de adicionar um novo servidor a esse rebanho e o adicionei ao nosso registro SPF e o configurei exatamente como nossos outros servidores. No entanto, devemos estar em uma lista negra ou mais provável lista cinza com o Google, provavelmente porque o netblock deste novo servidor tem uma má reputação, como e-mails para contas do Gmail sempre falham com um erro de desconexão na primeira tentativa. Eu tentei enviar manualmente para os endereços do Gmail e, se tiver permissão para fazer mais de uma tentativa, isso funciona bem, eu posso ver a primeira tentativa falhando e, em seguida, a segunda tentativa funciona, não há problema. Mas, como eu disse, não estamos fazendo segundas tentativas com o nosso sistema.
O problema é que acabo com um monte de processos do Exim que estão esperando a desconexão do Google, o que acaba maximizando a memória da máquina (é uma máquina virtual, então apenas 512M de RAM ) e então o OOM_killer do kernel começa a matar processos e nós perdemos e-mails que deveriam ser apagados.
Eu não espero sair da greylist do Google tão cedo, então a solução real que posso ver é descobrir como fazer com que os processos do Exim desistam mais cedo, para que eu não fique sem memória. Existe uma maneira na configuração do Exim para fazer isso? Ou simplesmente limitar quantos processos totais do Exim são executados no sistema? Note que estes são procs separados do Exim, disparados pelo nosso software de geração de e-mail personalizado, eles não são filhos do MTA principal do Exim. Eu não vejo nada nos documentos do Exim que pareçam abordar qualquer um destes.
observação: eu já tentei usar hubbed_hosts para fazer com que o Exim nem tente destinos do google, mas isso não está funcionando. Talvez eu tenha a formatação do meu arquivo hubbed_hosts errado?
É isso (com o nome de domínio ofuscado):
.*google.com: bulkflow.mydomain.org
.*gmail.com: bulkflow.mydomain.org
Se eu tiver errado e puder consertá-lo, talvez essa seja a resposta.