Envio de e-mails em massa para 20 mil pessoas de uma vez (em teoria)

Envio de e-mails em massa para 20 mil pessoas de uma vez (em teoria)

Meu banco de dados contém mais de 20.000verificadoendereço de e-mail. Estes são e-mails de usuários com permissão (usuários definidos nas opções) para receber newsletters, atualizações, etc... do site. Na verdade, nunca usei seus endereços de e-mail para qualquer finalidade, mas agora quero que os usuários recebam algumas atualizações do site periodicamente (uma vez por mês ou dois meses). Minha dúvida é mais sobre como enviar o mesmo e-mail para 20 mil usuários o mais rápido possível e quais restrições posso enfrentar ao fazer isso?

Tenho algumas idéias de como fazer isso usando a função mail() integrada do Cron e do PHP, mas não consigo enviar 20 mil e-mails de uma vez (posso?). Além disso, sei que os e-mails provavelmente acabarão na pasta lixo/lixo/spam do destinatário (tudo bem), mas não tenho certeza se existe alguma lei contra o envio de e-mails em massa ou restrições (definidas pelo serviço de hospedagem).

O que preciso é responder como posso fazer isso e qual a melhor forma de realizar essa tarefa? Esta não é uma pergunta do tipo "me dê uma solução", só preciso de algumas dicas porque nunca enviei mais de 5 e-mails ao mesmo tempo na minha vida e não consegui encontrar resposta para essa pergunta. Gostaria de saber como grandes serviços, como Facebook, Twitter, Youtube, informam seus usuários (provavelmente milhões deles ao mesmo tempo)?

Nota: Desculpe se este não é o lugar certo para fazer esta pergunta, pensei duas vezes sobre onde postá-la, aqui ou no StackOverflow, mas de acordo com a aparência do meu problema (não forneço nem peço código), acho seria encerrado no SO como "não construtivo" ou mesmo "fora do assunto".

Responder1

Você enfrentará alguns problemas ao enviar todos os e-mails de uma vez. ou um por um.

BLOQUEADORES DE SPAM

Para enviar essa quantidade de e-mail você precisa configurar o SPF, possivelmente algum tipo de assinatura de certificado, use um servidor com ip estático, de preferência com DNS reverso. Quando você começa a crescer ainda mais, precisa entrar em contato direto com alguns postmasters de e-mail para ser colocado em uma lista branca, enviando motivos legítimos e documentação. Costumávamos enviar cerca de 250 mil e-mails por dia, às vezes 4 vezes por mês para nossos assinantes.

Escrevemos o nosso próprio programa, mas há muitos disponíveis.

Além disso, você pode simplesmente fazer um loop em cada e-mail e enviá-lo um por um.

Boa sorte

Responder2

Resposta curta: Faça o IP estático e o DNS reverso. Você pode, mas não os envie em uma hora. Os servidores de e-mail não gostam de milhares de e-mails em pouco tempo, você será bloqueado. Eu diria ainda mais se todo esse e-mail vier de um servidor de e-mail que acabou de aparecer na rede.

Resposta longa: envio 2.000 e-mails uma vez por semana. Eu uso um programa em php para enviá-los, é um software livre, não sei se consigo nomear aqui então não vou. O site é laranja, está em php para gerenciar listas (newsletters). Meu servidor é um 1 GB de RAM xeon 2.4GHZ 4 núcleos com Debian, ele envia 4 e-mails por segundo (cerca de 100K cada) com postfix (todos os e-mails enviados são verificados em busca de vírus), então isso deve ser 14.000 por hora. Se você enviar muitos e-mails para um domínio, alguns deles poderão ter algum recurso de bloqueio. O Yahoo tinha/tem algo parecido com lista cinza, lembro que tive que contatá-los mais de uma vez durante 3 meses até que parassem com as rejeições temporárias. Meu ISP rejeita emails se vir muitas conexões em pouco tempo, então no postfix diminuí as conexões, acho que de 20 para 10. A propósito, o Gmail envia 5.000 emails por segundo, ouvi isso em um debconf (10,11, 12) de um dos desenvolvedores.

informação relacionada