fundo:
O endereço de email é armazenado na tabela de informações do usuário do MSSQL com dezenas de milhares.
A empresa possui seus próprios servidores, coletando SMTP, POP3, WWW, FTP, MSSQL, DNS e outros serviços.
Jmail tem um objeto de correio, mas a versão livre não pode ser usada
Requer:
Use asp jmail, use a empresa SMTP para enviar e -mail a todos os usuários
Ideia:
A leitura diretamente do banco de dados e o envio de vários ciclos muitas vezes causará muita pressão no servidor com uma configuração baixa.
É melhor enviá -lo em lotes para o email e cada lote de intervalo de envio por um período de tempo para aliviar a pressão no servidor.
concluir:
Lote por e -mail
Leia o registro do RecordSet e use o programa de paginação comum para fazer todas as páginas de registro.
Atraso
Após a execução de cada página ser concluída, <meta http-equiv = conteúdo de refresh = 60;
Reduza o tempo de execução:
Durante o ciclo, adicione o destinatário ao ciclo em vez da circulação, ou seja,
para i = 1 a rs.pagesize
Msg.addrecipient rs (email)
rs.movenext
próximo
msg.send (smtp.abc.com)
Reduza o tamanho do e -mail
Se você adicionar um destinatário ao ciclo, haverá muitos destinatários de email, e esse email será muito grande.
Portanto, melhore -o com base no código acima, faça um julgamento no ciclo, quando o número de email de destinatário chegar
Envie uma vez em 20. Agora mesmo:
para i = 1 a rs.pagesize
Msg.addrecipient rs (email)
Se eu mode 20 = 0, envie um e -mail a cada 20 credores como um email
msg.send (smtp.abc.com)
msg.clearrrecipients 'limpe o remetente que foi enviado
final se
rs.movenext
próximo
msg.send (smtp.abc.com) 'para enviar os restantes
página
Mail.asp contém temas de email e formulários de texto, <formato de ação = sendmail.asp Target = Send>;
Sendmail.asp contém programas de envio de fundo, ciclos, saltos atrasados, etc.
deficiência:
Durante o processo de envio, você não pode deixar esta página
O tempo de envio é longo, o que está relacionado ao desempenho de cada lote de configurações, largura de banda de rede e desempenho do servidor SMTP
melhorar:
Você pode incluir várias páginas iframe no Mail.asp.
A pressão no servidor SMTP aumentará, mas pode reduzir o tempo de entrega.
Você pode considerar o uso de diferentes servidores SMTP em diferentes páginas, como conter várias páginas do iframe.
smtp.abc.com, use smtp.123.com na página de número ímpar. Isso não apenas reduz a pressão do servidor, mas também atinge o envio de thread multi -thread
Encurre o objetivo do tempo de entrega.