Cron php et "newsletter"

Nouveau WRInaute
Bonjour à tous,

je souhaite réaliser l'application suivante mais avant je souhaiterais des avis sur certains points.

L'application en question servirait à envoyer des emails en quantité importante par groupe de destinataires à partir de 3 serveurs smtp (3 kimsufi ovh dédié à cette tache) et de manière régulière.

Pour ceux que ça inquiete, les emails sont issus d'inscriptions souhaitées ou d'achats légaux de sources.

Je souhaiterais réaliser cette application en php.

sur la home page de mon site j'ai mis un include d'un fichier cron.php qui fait appel à une table mysql cron. Cette table contient les noms des fichiers php a executer si la date correpond (en fonction d'une fréquence) et execute les fichiers si nécessaire.

comme certains groupes de destinataires dépassent les 100 000, je me demande si ma home page ne va pas planter tout simplement lorsque la tache sera lancée. Pour info le systeme fonctionne parfaitement pour des taches simples (par exemple la 1ere visite apres minuit lance un vidage de dossier upload).

Il faut aussi savoir que mon script d'envoi de mail effectuera un envoi de mail via le protocol smtp sur 3 serveurs distants (les kimsufi) mais pas depuis le smtp du serveur qui heberge ce script.

Si vous me demandez pourquoi ne pas lancer directement le script d'envoi de mail depuis les serveurs kimsu je dirais que c'est par rapport au pseudo cron en php. Et je ne souhaite a priori pas réaliser les cron via crontab unix, mais en php ce qui me laisse la possibilité des les gérer facilement depuis une interface d'admin php.

récapitulatif simple:
1- la 1ere visite apres minuit active le fichier cron.php en include
2- ta table cron execute les taches dites du jour, change le statut a "tache effectuée" et reprogramme la date de la prochaine execution en fonction de la fréquence (également définie dans la table).
3- le fichier mail.php (que je dois créer) envoie en gros email a de tres nombreux destinataires selon le groupe, la fréquence, le smtp a utiliser etc etc etc...

Bref, je souhaiterais des avis sur la méthode, quels serait les pb que je vais rencontrer (set_limit etc etc...).

Merci par avance !
 
WRInaute accro
Les problèmes c'est qu'à chaque chargement de page tu vas faire une vérification pour un éventuel lancement de ta tâche.

Autrement problème fréquent avec ce système, 2 personnes arrivent en même temps, paf, 2 tâches lancées ;)
 
WRInaute accro
En même temps deux personnes arrivant en même temps... l'idée serait de prévoir un flag qui permettrait de vérifier si la tâche a été lancé ou pas, de manière à ne pas la relancer dans ce cas de figure, mais je connais plusieurs sites qui se basent sur ce genre de système et qui n'ont jamais eu ce cas de figure (des sites ayant un nombre conséquent de visiteur NDLR).
 
Nouveau WRInaute
c'est deja le cas, lorsque le 1er visiteur passe sur le site il y a une requete sql qui indique la tache comme effectuée. donc pas de double tache.
 
WRInaute accro
Je dis juste que j'ai connu ça sur un script qui m'envoyait quasiment tous les soirs 2mails à cause de cette erreur. Et à mon avis il avait pensé au flag qui est une notion assez basique, sinon j'aurais reçu un mail à chaque visite ;)
 
Discussions similaires
Haut