Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    [VB6] Invio gruppi di email

    CIao a tutti

    Ho scritto un programma in vb6 che i occupa dell'invio della newsletter.

    Il programma stabilisce una connessione col server smtp e per ogni connessione invia 100 email.

    Il problema è che la newsletter è composta da circa 20mila indirizzi e dunque per completare l'invio ci vuole tutta la notte....

    COme posso fare per velocizzare il processo?

  2. #2
    Spero non siano delle catene di S. Antonio

    Cmq credo che possa dipendere dalla grandezza della newsletter e dalla velocità di connessione del tuo computer (e del server a cui mandi...magari la sera c'è più traffico e ti rallenta)

    Cmq se non posti un pò di codice sarà difficile capire dove si può velocizzare eventualmente

  3. #3
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Si dovrebbe ottimizzare l'invio usando eventualmente dei thread, una soluzione difficile da ottenere con VB6.

    Al di là di questo, credo che avendo comunque migliaia e migliaia di indirizzi, seppur con un'ottimizzazione, ci voglia del tempo comunque.

    Ciò che posso suggerirti è l'uso di un programma "schedulatore" che faccia l'invio delle email, in quanto esistono liste molto più numerose e la spesa di un quantitativo di tempo è comunque calcolata e plausibile.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  4. #4
    Tranquilli, nessuna catena...gli iscritti hanno regolarmente richiesto di essere inseriti...

    Originariamente inviato da alka
    Si dovrebbe ottimizzare l'invio usando eventualmente dei thread, una soluzione difficile da ottenere con VB6.

    Al di là di questo, credo che avendo comunque migliaia e migliaia di indirizzi, seppur con un'ottimizzazione, ci voglia del tempo comunque.

    Ciò che posso suggerirti è l'uso di un programma "schedulatore" che faccia l'invio delle email, in quanto esistono liste molto più numerose e la spesa di un quantitativo di tempo è comunque calcolata e plausibile.

    Ciao!
    Come posso usare questo programma schedulatore? SI tratta di lanciare il programma a determinati orari?

    E se creassi più form di spedizione che lavorano contemporaneamente?

  5. #5
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Originariamente inviato da alex986best
    Come posso usare questo programma schedulatore? SI tratta di lanciare il programma a determinati orari?
    E' più semplice lanciare il programma che rimane sempre attivo e con un orario impostato al quale cominciare il processo di invio.

    Originariamente inviato da alex986best
    E se creassi più form di spedizione che lavorano contemporaneamente?
    Non credo funzionerebbe, in quanto non è un problema dell'ambito di un form bensì della natura "monothread" delle applicazioni VB6.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  6. #6
    e non c'è un modo per dire al server smtp di inviarne 100 alla volta?

    ovviamente facendo in modo che gli utenti non vedano gli altri indirizzi

  7. #7
    Era la soluzione che ti diceva Alka dei thread. Fare tanti Form non cambierebbe di tanto la soluzione. Invece dovresti creare più processi (thread....) che in contemporanea (ma in maniera indipendente l'uno dall'altro) facciano le spedizioni.

    Tutto questo cmq è sempre poi dipendente dalla velocità della linea e soprattutto dal server a cui spedisci che potrebbe bloccarsi per il troppo carico...

  8. #8
    a questo punto mi viene da pensare che converrebbe avere un bel server dedicato....che ne dite?

    Così si possono utlizzare i vantaggi dei vari cron, qmail, ezmlm....

  9. #9
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Originariamente inviato da alex986best
    e non c'è un modo per dire al server smtp di inviarne 100 alla volta? ovviamente facendo in modo che gli utenti non vedano gli altri indirizzi
    Potresti anche valutare una soluzione di questo tipo, usando il campo "BCC", ma dovresti tenere conto del fatto che molti server SMTP (non so qual è quello che usi tu) supportano un numero molto limitato di destinatari per ciascun messaggio, quindi dovresti porre attenzione a come li raggruppi rimanendo comunque a quote molto basse.

    L'ideale sarebbe che tu implementassi un tuo server SMTP integrato, oppure ne installassi uno sulla macchina configurabile.

    In genere, per applicazioni di questo tipo, si preferisce la prima soluzione poiché la consegna diretta gestita interamente in modo autonomo consente anche di verificare e contrassegnare tutti quegli indirizzi che non sono validi o non sono più esistenti.

    Recentemente, mi sono informato su tutte queste problematiche poiché sto producendo un software analogo con Delphi (quindi ci sto sbattendo la testa in prima persona, ma non vedo grossi problemi su multithreading e colloquio TCP/IP).

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  10. #10
    Originariamente inviato da alka
    Potresti anche valutare una soluzione di questo tipo, usando il campo "BCC", ma dovresti tenere conto del fatto che molti server SMTP (non so qual è quello che usi tu) supportano un numero molto limitato di destinatari per ciascun messaggio, quindi dovresti porre attenzione a come li raggruppi rimanendo comunque a quote molto basse.

    L'ideale sarebbe che tu implementassi un tuo server SMTP integrato, oppure ne installassi uno sulla macchina configurabile.

    In genere, per applicazioni di questo tipo, si preferisce la prima soluzione poiché la consegna diretta gestita interamente in modo autonomo consente anche di verificare e contrassegnare tutti quegli indirizzi che non sono validi o non sono più esistenti.

    Recentemente, mi sono informato su tutte queste problematiche poiché sto producendo un software analogo con Delphi (quindi ci sto sbattendo la testa in prima persona, ma non vedo grossi problemi su multithreading e colloquio TCP/IP).

    Ciao!
    In delpi il multithreading è fattibile senza troppi problemi?

    COmunque una volta avevo provato ad utilizzare uns erver smtp in locale(quello con IIS) ma non riconoscendo il server di posta molte volte i vari server di posta la riconoscevano come spam

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.