Bom dia!
Tenho a seguinte situação:
Em uma tabela do banco de dados tenho, por exemplo, 1000 registros, que são emails a serem enviados.
Chamo uma página php que se chama enviar.php.
A primeira ação nesta página é ir nesta tabela do BD e ver se existem registros com enviado=não.
Se existir, envia um lote de emails.
Ao terminar de enviar este lote, a página enviar.php chama ela mesma de novo, que verifica novamente se ainda existem registros com enviado=não. Se existir, envia mais um lote e assim sucessivamente, até que não existam mais registros com enviado=não.
Quando não existem mais registros, o processo é finalizado.
**Minha pergunta é**: esta forma de a mesma página chamar ela de novo é errada? Pode causar problemas de memória no servidor?
Obs.: precisei fazer desta forma de envio em lotes porque a página roda em uma hospedagem que não me permite aumentar o tempo de execução.
Se não me engano, em 90 segundos a página cai.
Então, a forma que encontrei de driblar esta situação, foi a mesma página se chamar novamente, o que reinicializa a contagem do tempo de validade da mesma.
Pergunta
rltc
Bom dia!
Tenho a seguinte situação:
Em uma tabela do banco de dados tenho, por exemplo, 1000 registros, que são emails a serem enviados.
Chamo uma página php que se chama enviar.php.
A primeira ação nesta página é ir nesta tabela do BD e ver se existem registros com enviado=não.
Se existir, envia um lote de emails.
Ao terminar de enviar este lote, a página enviar.php chama ela mesma de novo, que verifica novamente se ainda existem registros com enviado=não. Se existir, envia mais um lote e assim sucessivamente, até que não existam mais registros com enviado=não.
Quando não existem mais registros, o processo é finalizado.
**Minha pergunta é**: esta forma de a mesma página chamar ela de novo é errada? Pode causar problemas de memória no servidor?
Obs.: precisei fazer desta forma de envio em lotes porque a página roda em uma hospedagem que não me permite aumentar o tempo de execução.
Se não me engano, em 90 segundos a página cai.
Então, a forma que encontrei de driblar esta situação, foi a mesma página se chamar novamente, o que reinicializa a contagem do tempo de validade da mesma.
Obrigada
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.