[PHP] Bulk mail , wat is de beste manier

Pagina: 1
Acties:

  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 23:24

BierPul

2 koffie graag

Topicstarter
Ik ben al een tijdje bezig met het optimaliseren van mn bulk mail programma.

Deze gaat tussen de 1000 en 2000 mails versturen,
er wordt echter verwacht dat het bestand gaat groeien tot 100.000 vrijwillige ontvangers

Op dit moment verstuur ik gewoon met een while loopje
alles mensen

Dit doe ik via de wel bekende HTML MIME class :)
werkt perfect.

Nu vraag ik me af en ik weet eigenlijk wel zeker dat er betere manieren zijn om dit te doen.

Via cron misschien maar daar zie ik niet metteen de voordelen van :)

Iemand ideen :?

Ja man


  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

lijkt me dat burst's van x aantal mails per keer een id zou zijn
om zo timeouts en andere ranzigheden te voorkomen

Doet iets met Cloud (MS/IBM)


  • Skinny
  • Registratie: Januari 2000
  • Laatst online: 25-07 18:17

Skinny

DIRECT!

een Bcc: header maken met 500 ontvangers per keer oid :?

SIZE does matter.
"You're go at throttle up!"


  • Skinny
  • Registratie: Januari 2000
  • Laatst online: 25-07 18:17

Skinny

DIRECT!

Gamma :)

SIZE does matter.
"You're go at throttle up!"


  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 23:24

BierPul

2 koffie graag

Topicstarter
BCC is geen optie aangezien het om gepersonaliseerde mails gaat.

Timeouts Vang ik af via
code:
1
set_time_limit(0);

Voor de zekerheid update ik met een time stamp ook het email ontvangers record :)

Ja man


Verwijderd

ik stuur momenteel via perlscript 2500 mailtjes gericht aan de naam van een persoon. Ik ben van mening dat als je algemene mailtjes gaat sturen (dus on persoonlijk) dat het een stuk minder doeltreffend is.
Maarja 100.000 is wel even iets meer :)
Maar opzich..... 2500 gaat best snel. Heb ook pauzes erin zitten voor de mailserver en t gaat prima...
Maarja tips voor jou? Hmm ligt eraan waar je voor kiest...
Vind je het prima dat je server uurtje staat te draaien om alles te versturen of deel je het op door adressen in bcc header te zetten. (nog zoiets, veel filters zien je mail als ongewenst als je emailadres niet in de to: of cc: zit...)
Het is de keuze die jij maakt denk ik :) zoveel mogelijkheden zijn er denk ik niet. :7 succes

  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 23:24

BierPul

2 koffie graag

Topicstarter
thnx :P

Pauzes inlassen is wel een id idd

Ik neem aan dat je gewoon een timestamp set als strat tijd en wanneer 10 minuten hoger dan las je een pauze in ofzow :?

Ja man


Verwijderd

Op woensdag 17 april 2002 11:33 schreef LOST_GUNT het volgende:
Ik neem aan dat je gewoon een timestamp set als strat tijd en wanneer 10 minuten hoger dan las je een pauze in ofzow :?
kan ook :)

je kan ook om de x aantal mailtjes even pauze houden.
ik doe nu ook om het mailtje heel eventjes wachten, maar opzich is dat nog niet echt nodig denk ik.

Verder kan je bijv. om de 100 mailtjes ofzo ff rust houden.

  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 23:24

BierPul

2 koffie graag

Topicstarter
Hmmzz domme vraag misschien maar hoe laat je je script pauzeren :?

Ja man


  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

Op woensdag 17 april 2002 12:03 schreef LOST_GUNT het volgende:
Hmmzz domme vraag misschien maar hoe laat je je script pauzeren :?
sleep();

Klaar voor een nieuwe uitdaging.


  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 23:24

BierPul

2 koffie graag

Topicstarter
Op woensdag 17 april 2002 12:05 schreef chem het volgende:

[..]

sleep();
Chem is te snel had hem net gevonden :P

Ja man


Verwijderd

ik denk dat je het al wel hebt, maar verstuur de mail dmv smtp, er zijn wel een paar classes voor te vinden. Dit heeft als voordeel boven de mail() functie,
- dat de connectie open blijft staan (en niet steeds opent en sluit)
- daardoor wordt server veeeeel minder zwaar belast.

het versturen van 100 mailtjes met de mail() functie kan de server al tot een load van >4 schoppen, stel je voor hoe hoog ie gaat met 100.000 mailtjes...

zo zijn er nog wel een paar voordelen te bedenken...

Verwijderd

[b]
Dit doe ik via de wel bekende HTML MIME class :)
werkt perfect.
Welke Mime class bedoel je ik gebruik zelf voor een email applicatie voor het versturen van gepersonificeerde emails de mime class van de phpguru.org werkt ook perfect.

Om tiemouts en errors te vookomen gebruik ik na elke paar emails een reload van het script zodat de timeout wordt vookomen.

  • Anders
  • Registratie: December 2000
  • Laatst online: 24-08 18:29
Op woensdag 17 april 2002 20:49 schreef houdtbaar het volgende:

[..]

Welke Mime class bedoel je ik gebruik zelf voor een email applicatie voor het versturen van gepersonificeerde emails de mime class van de phpguru.org werkt ook perfect.

Om tiemouts en errors te vookomen gebruik ik na elke paar emails een reload van het script zodat de timeout wordt vookomen.
Met andere woorden, het moet via je browser? Lijkt me niet echt handig: dan moet je er constant bijblijven. Gaat er iets fout op de client en crasht de browser, moet je restarten. Gaat met 1,000 subscribers nog wel, maar met 100,000 subscribers wil je dat echt niet. Ga dan gewoon voor een degelijke, serverside afhandeling via mailinglistsoftware als majordomo of listserv die stand-alone werkt zonder dat de client gedurende het gehele mail-proces actief hoeft blijven. Kijk er in ieder geval eens naar.

Ik spoor veilig of ik spoor niet.


Verwijderd

Ga dan gewoon voor een degelijke, serverside afhandeling
Het probleempje hierbij is dat je root access moet hebben op de webserver en dat heb ik niet, dus is dit een goede oplossing, niet?

Oja als de client crashed dan hoede db zelf bij waar ie gebleven is, dus kan het zenden weer geresumed worden...

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 23:30
Op woensdag 17 april 2002 21:57 schreef houdtbaar het volgende:
Het probleempje hierbij is dat je root access moet hebben op de webserver en dat heb ik niet, dus is dit een goede oplossing, niet?
Ow, je mag geen files includen? >:).

  • BierPul
  • Registratie: Juni 2001
  • Laatst online: 23:24

BierPul

2 koffie graag

Topicstarter
Op woensdag 17 april 2002 21:57 schreef houdtbaar het volgende:

[..]

Het probleempje hierbij is dat je root access moet hebben op de webserver en dat heb ik niet, dus is dit een goede oplossing, niet?

Oja als de client crashed dan hoede db zelf bij waar ie gebleven is, dus kan het zenden weer geresumed worden...
Jup dat doe ik ook bij elke verzonden mail update ik een lastsend veld met een timestamp

Crashe het draait ik opnieuw de query vanaf het moment van de crash :)

Ja man

Pagina: 1