Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > symfony
symfony Forum d'entraide sur le framework PHP symfony. Avant de poster : cours symfony et FAQ symfony
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/01/2011, 16h59   #1
Candidat au titre de Membre du Club
 
Inscription : avril 2010
Messages : 77
Détails du profil
Informations forums :
Inscription : avril 2010
Messages : 77
Points : 12
Points : 12
Par défaut probleme envoi email timeout

bonjour à tous,

Nouveau souci!
J'essaye d'envoyer des email avec un moteur d'emailing que j'ai mis en place avec symfony.Seul souci il ne route que 1205 emails sur une liste de près de 12000 clients.
je ne sais pas si le probleme est au niveau de symfony, est ce qu'il ya un moyen de gerer une sorte de time out (je dis ca comme ça ,suis pas sur que c'est de la ke vient le probleme).
Ps: j'utilise un serveur debian!! que je peux configurer!!

merci d'avance.
lepopol est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2011, 19h10   #2
Membre habitué
 
Homme Ludovic Henry
Étudiant
Inscription : octobre 2009
Messages : 97
Détails du profil
Informations personnelles :
Nom : Homme Ludovic Henry
Âge : 20
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : octobre 2009
Messages : 97
Points : 105
Points : 105
J'avais déjà penser à une solution, mais que je n'ai encore jamais mis en place.

Comme le nombre de mail que tu dois envoyer est énorme, la mémoire utilisé, tout comme le temps utilisés vont être énorme. Donc une des solutions est de diviser le nombre de mails que tu va envoyer.

Pour ce faire, tu peut utiliser la méthode d'envoi par spool ( à la place de realtime par exemple ). Ensuite, tu configure une tâche CRON qui va s'éxecuter toutes les 70 secondes par exemple qui va lancer la ligne de commande
Code :
/chemin/vers/ton/projet/symfony project:send-mails --message-limit=1000 --time-limit=60
Ainsi, toutes les 70 secondes, 1000 mails au maximum seront envoyer pendant une durée maximum de 60 secondes.

De plus, quand il n'y aura aucun mail dans le spool, rien ne sera fait.

Les valeurs sont bien sur à adapter à ton serveur ( temps maximum d'éxécution d'un script PHP, mémoire maximale utilisable par le script, ... )

Et si jamais tu veut voir ou ca en ai, tu peut utiliser le sfDoctrinePool ou sfPropelPool. Tous les messages à envoyer seront ainsi stocker dans ta base de donnée, tu pourras donc voir quels messages n'ont pas encore été envoyé, ...

J'espère que je t'ai aider dans tes recherches,
Inarius
Inarius est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/01/2011, 23h52   #3
Candidat au titre de Membre du Club
 
Inscription : avril 2010
Messages : 77
Détails du profil
Informations forums :
Inscription : avril 2010
Messages : 77
Points : 12
Points : 12
Merci pour tes indications,
Voici ce que j'ai utilisé pour regle mon probleme!J'ai tout simplement modifier le moyen de transport dans mon factories.yml et j'ai utilisé le transport de mail "SwiftMailTransport " au lieu de "SwiftSmtpTransport" (qui sur mon serveur ne pouvait envoyer que 1000 mail en realtime)
lepopol est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h03.


 
 
 
 
Partenaires

Hébergement Web