A principal diferença é que Milter acontece na pré-fila, ou seja, antes de o Postfix aceitar o e-mail. A filtragem de conteúdo acontece depois da fila .
Depende das circunstâncias e dos recursos disponíveis. Em geral, a filtragem de conteúdo pós-fila na minha experiência consome menos recursos. O postfix lida com as transações SMTP, enfileiram as mensagens e isso pode acontecer de forma relativamente rápida e sem problemas. O Postfix é muito eficiente a esse respeito e, em seguida, o filtro de conteúdo pode aparecer (no seu caso, amavis) e assumir a varredura do e-mail.
A desvantagem da abordagem pós-fila é que o Postfix não pode rejeitar o correio em tempo real. É preferível rejeitar o máximo de email possível na própria transação SMTP, para evitar o envio de mensagens. Por quê? Porque muitos spams, vírus e outros e-mails que você deseja bloquear / rejeitar são enviados de endereços de e-mail inexistentes ou falsos. Quando isso ocorre, você tem um efeito de retorno duplo e esses emails tendem a preencher sua fila. Outra alternativa é que o seu servidor de e-mail está enviando um e-mail para um destinatário não intencional (ou seja, um e-mail existente usado para spam).
Eu sempre sugiro usar material leve por meio do readme de proxy milter ou SMTPD e deixar o processamento pesado até o estágio de filtro de conteúdo. Então, isso dependeria do que o amavis está usando e de quais recursos você tem disponível para você. É preferível poder executar o amavis como um milter durante a fase de transação SMTP, mas pode não ser prático.
Meu conselho seria tentar isso se você não tiver certeza e comparar o antes e o depois. Ninguém realmente poderá aconselhá-lo definitivamente sobre sua situação, já que seu volume de e-mail, perfil e hardware serão diferentes da maioria das pessoas.