Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc
Comunitatea PHP Romania
 

Trimitere numar mare de emailuri din PHP
Vezi mesajul original

 
       Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc -> PHP Avansat
Subiectul anterior :: Subiectul următor  
Autor Mesaj
cyberdog



Data înscrierii: 26/Mar/2007
Mesaje: 68

Trimis: Joi Dec 13, 2007 7:30 pm    Titlul subiectului: Trimitere numar mare de emailuri din PHP  

Salut!

Intampin o problema. Un site la care lucrez necesita ca la anumite momente sa fie trimis un numar de emailuri membrilor ce se incadreaza in anumite criterii.
Fiecare email in parte este diferit pentru fiecare membru.
Ma poate sfatui cineva care e metoda optima de a trimite acest numar mare de emailuri?

Va multumesc!
Sus  
saitek



Data înscrierii: 23/Sep/2007
Mesaje: 437

Trimis: Joi Dec 13, 2007 7:56 pm    Titlul subiectului:  

Si eu am avut problema asta...adica trebuia la un site sa trimita mass mail message la toti useri...si am folosit phpmailer+ajax,si pui si un preloader...
Sus  
cyberdog



Data înscrierii: 26/Mar/2007
Mesaje: 68

Trimis: Joi Dec 13, 2007 10:11 pm    Titlul subiectului:  

Merci pentru raspuns!
Totusi, nu se incarca prea mult serverul dintr-o data trimitand toate mailurile in acelasi moment? Cum s-ar putea face lucrul asta mai elegant?

Merci!
Sus  
saitek



Data înscrierii: 23/Sep/2007
Mesaje: 437

Trimis: Joi Dec 13, 2007 11:30 pm    Titlul subiectului:  

tocmai de aia am spus +ajax si pui un preloader,ca sa nu ai probleme de time out etc...
Sus  
cyberdog



Data înscrierii: 26/Mar/2007
Mesaje: 68

Trimis: Joi Dec 13, 2007 11:50 pm    Titlul subiectului:  

Nu la asta ma refeream, intrucat pot trimite emailurile si printr-un cron job, dar ma ingrijoreaza sa nu supraincarc serverul dintr-o data trimitand poate mii de emailuri simultan.
Sus  
Pirahna



Data înscrierii: 22/Aug/2004
Mesaje: 4355
Locație: la birou

Trimis: Vin Dec 14, 2007 12:05 am    Titlul subiectului:  

mail = server side
nu ai nevoie de ajax

dai mail, bagi un sleep random de la 1 la 45 de secunde intre mail-uri, si lasi scriptul sa mearga, poate ii pui si un max_execution_time la inceput de vreo 3-4 ore ca sa fii sigur.

adica
ini_set(max_execution_time,7200)
while -> mail, sleep(random)
exit

asa poti sa zicem sa trimiti 15 mailuri pe minut (asta ca sa nu fii blacklisted, daca te simti in forma poti sa incerci 3000 de mailuri pe minut) si scriptul oricum lucreaza singur, deci cam asta ar fi metoda optima.

succes.

ps: saitek, omul a cerut o solutie optima ...
Sus  
cyberdog



Data înscrierii: 26/Mar/2007
Mesaje: 68

Trimis: Vin Dec 14, 2007 12:11 am    Titlul subiectului:  

Merci mult pentru raspuns!

Aceasta este genul de solutie la care ma gandeam.
Alte solutii mai sunt?
Sus  
Pirahna



Data înscrierii: 22/Aug/2004
Mesaje: 4355
Locație: la birou

Trimis: Vin Dec 14, 2007 12:16 am    Titlul subiectului:  

Evident, poti de exemplu sa folosesti mai multe servere de mail ...
5 mesaje la unul, apoi 5 la urmatorul, apoi 5 la urmatorul, si pauza 2 secunde, si din nou reiei.

Foloseste-ti imaginatia.
Sus  
cyberdog



Data înscrierii: 26/Mar/2007
Mesaje: 68

Trimis: Vin Dec 14, 2007 12:20 am    Titlul subiectului:  

Ar fi mai greu sa fac asta... Eu ma gandeam sa rulez cron job-ul la fiecare ora de exemplu , si la fiecare rulara sa mai trimita un set de emailuri.
Suna logic?
Sus  
carco



Data înscrierii: 27/Mai/2004
Mesaje: 2796
Locație: Bucuresti

Trimis: Vin Dec 14, 2007 6:45 am    Titlul subiectului:  

da, suna logic (e mai bine ca mailurile sa stea in coada serverului de mail (e proiectata pt. asa ceva) decat sa rulezi nspe ore acel script)

Trimiti 3-500mailuri (eventual, daca ti-e mila de server, dupa fiecare mail poti pune un usleep de o juma' de secunda, eu ultima data foloseam usleep(200000);) si iei o pauza de 30-60 minute (desi un server de mail liber va scapa de ele aproape instant, nu are nevoie de 1 ora). Cel mai bine ar fi sa monitorizezi coada si sa ajustezi pe parcurs nr. de mailuri (daca nu ai acces la coada serverului poti, de ex., dupa fiecare set sa iti trimiti si tie un mail si vezi dupa cat timp ajunge)
Sus  
nightm



Data înscrierii: 16/Dec/2003
Mesaje: 43
Locație: Iasi

Trimis: Sâm Dec 15, 2007 11:24 pm    Titlul subiectului:  

Am si eu o intrebare: decat sa puna max_execution_time la 3, 4 ore nu e mai bine sa il puna 0 ? astfel nu ar fi nelimitat ?


Am citit putin mai demult ca functia sleep nu are efect sub windows. Asa este ?
Sus  
dechim



Data înscrierii: 10/Mai/2005
Mesaje: 550
Locație: Drobeta Turnu Severin

Trimis: Dum Dec 16, 2007 3:52 am    Titlul subiectului:  

Pentru @nightm:
- eu folosesc wamp si sleep functioneaza;
- pe asta-l citesti ini_get('max_execution_time') in secunde si-l setezi pentru scriptul tau cu set_time_limit (nnn); Merge si 0 dar nu aici era problema.

Intrebarile de genul asta nu se pun la PHP avansat, eu nu-s admin dar sigur deranjeaza. Fara suparari !
Sus  
nightm



Data înscrierii: 16/Dec/2003
Mesaje: 43
Locație: Iasi

Trimis: Dum Dec 16, 2007 11:29 pm    Titlul subiectului:  

@dechim ms pt raspuns, stiu ca nu trebuia sa postez aici dar era exact pe problema ca si eu fac un script de genul si nu am vrut sa mai deschid un topic nou doar pt asta.
Sus  
xmart2k



Data înscrierii: 08/Dec/2004
Mesaje: 30

Trimis: Vin Ian 04, 2008 3:45 pm    Titlul subiectului:  

poti eventual sa mai adaugi un camp in tabela de useri, ceva gen "mail sent", care sa ia valori 1 sau 0, dupa ce trimit un mail il faci 1, iar la final le faci pe toate 0, daca se intampla ceva sa se supra incarce si sa moara, cand mai dai odata cronu la o ora, sa verifice daca exista mailuri care nu au 1, si doar la alea sa mai trimita, daca nu mai exista nimic cu 0, le faci pe toate iar 0....si mai departe ziua urmatoare, sau cand trebuie
Sus  
gabysolomon



Data înscrierii: 09/Apr/2006
Mesaje: 741
Locație: Bacau

Trimis: Dum Ian 06, 2008 8:19 pm    Titlul subiectului:  

daca te ajuta uite o clasa la care am lucrat eu un pic pt altcineva ....
nu a mai avut nevoie de ea ... asa ca e inca in stare BETA

Newsletter Class
Sus  
PHPRomania Bot
Bot Member


Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google
Trimis: Mie Dec 26, 2007 7:01 pm   Titlul subiectului: Ad  

Sus  
 
       Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc -> PHP Avansat
Pagina 1 din 1


Powered by phpBB 2.0.22 © 2001, 2002 phpBB Group
Varianta în limba română: Romanian phpBB online community