Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    14

    inviare email con ritardo a un database di 25000 contatti

    Ciao ragazzi,

    volevo chiedervi se potete suggerirmi qualche metodo per superare il problema che ho in questo momento.

    Ho un database di 25000 contatti su un server di un mio fornitore.

    Vorrei solo per questa volta, inviare loro un email. L'unica mia preoccupazione sta nel timore che un azione di questo genere possa recari fastidi al server.

    Per ovviare a questo problema pensavo di ritardare l'invio della mail oppure di mandare 500 email alla volta.

    In entrambi i casi non saprei come procedere.

    Voi avete qualche dritta da darmi?
    Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    500
    Limita la SELECT cioè:

    Codice PHP:
    SELECT from user LIMIT 0,500 

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    14
    Grazie Vicar!!

    posso quindi fare in seguito una cosa di questo genere?

    SELECT * from user LIMIT 500, 1000


    e poi...

    SELECT * from user LIMIT 1000, 1500

    ecc??

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    500
    Sisi... Ma invece di farlo a mano usa un for che va di 500 in 500 cioè

    for($i=0; $i < $tot_utenti; $i+=500){
    $itemp=$i+500;
    $query2 = "SELECT * FROM users LIMIT $i,$itemp";
    e poi fai un for che invia le mail a ciascun un utente
    }

    Quel codice è una bozza, non funziona sicuramente, devi gestirtelo e vedere i bug che ci potranno essere ad usare quel metodo.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    14

    [RISOLTO]

    Grazie mille Vicar.

    Credo lo userò a mano così posso decidere di inviare blocchi di 500 email ogni 2 3 ore per non appesantire il server


  6. #6
    guardate che i server di posta elettronica non sono dei pupazzetti di carta che man mano che si usano si rovinano e poi si possono buttare (ok, l'esempio non c'azzecca nulla ... ma .... )

    Innanzi tutto una domanda fondamentale: il server di posta con cui spedisci tutte queste e-mail è sul tuo server dedicato (hai un server dedicato, vero?) oppure usi un server esterno?

    Le email sono uguali per tutti oppure sono ad hoc per ogni cliente? Perché nel primo caso puoi creare una e-mail unica con 500/1000 indirizzi in BCC cosi da spedire 25/50 e-mail e basta ... nel secondo caso dipende dall'smtp che usi (e si torna alla domanda precedente)

    Se li mandi tramite il tuo server di posta direi che il problema nemmeno esiste perché ci pensa lui a mettersele in coda e a smistarle man mano che può farlo, se usi un smtp esterno la cosa cambia un pochetto assai ^^

    Se sul tuo server dedicato ci sta exim installato (immagino lo si possa fare anche con altri webserver), volendo invece di inviare le e-mail puoi scriverle direttamente nella sua coda di messaggi in uscita cosi da risparmiare parecchie risorse

    Ancora ... se invii le e-mail diverse una per una e non vuoi scrivere i messaggi direttamente nella coda del webserver, puoi connetterti a lui in locale (localhost su porta 25) ed inviare le email senza terminare la connessione, ovvero usando RSET dopo che effettui l'invio dei dati cosi da ridurre considerevolmente il consumo di risorse del sistema e nel contempo permettendo al sistema di ricevere e prepararsi allo smistamento di ogni singola e-mail
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    14
    Ciao Daniele,

    Non utilizzo un server di posta ma un server web, e mando le mail attraverso php con la funzione mail();

    lo devo fare solo una volta! poi utilizzero' un autoresponder che mi permette maggiore flessibilità

  8. #8
    indubbiamente utilizzi un server di posta, altrimenti non potresti inviare e-mail ... lo fa php per te, non tu direttamente

    detto questo, la macchina è tua o sei su un normale spazio web?
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    14
    Sono sullo spazio di un fornitore.

    è lui che mi ha detto di evitare azioni massive.

    Utilizzo una mail generica che viene personalizzata (nome cognome ecc) quindi non posso far un bbc perchè ho bisogno di invocare delle azioni specifiche. In altre parole costruisco un link dinamico ad hoc perogni utente

    che dici?

  10. #10
    direi o che prendi un servizio SMTP esterno o che prendi una macchina dedicata low cost
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.