20. december 2000 - 18:18Der er
33 kommentarer og 1 løsning
SMTP server har maks på ...
Jeg har en rutine der sender E-mail ud til min nyhedsgruppe.
Det er lavet sådan den sender 30 mails ad gangen.
Kan man ligge en pause ind imellem sådan den venter 10 sek med at sende de næste 30.
lidt kode ------------------------------------------- If Not (rs.BOF Or rs.EOF) Then send = false count = 0
Do While Not rs.EOF navn = rs(\"username\")
If hvad = \"0\" Then Jmail.AddRecipientBCC \"\" & rs(\"email\") send = false
Response.Write \"\" & rs(\"email\") & \" - \" & navn &\"<br>\" End If If (count Mod 30) = 0 Then \' Send mailen JMail.Execute JMail.ClearRecipients
send = true End If
RS.movenext count = count + 1 Loop Else session(\"fejl\") = \"Der var ingen at sende til. Prøv med et andet køn osv..<br>\" Response.Redirect \"email.asp?mode=fejl\" End If
RS.Close Set RS = Nothing \' Send mailen hvis ikke vi nåede op på 30 if send = false then JMail.Execute Set JMail = Nothing ElseIf mode = \"fejl\" Then Response.Write \"\" & session(\"fejl\") & \"\" End If %>
tjahhh, jeg havde lige nogle andre ting, men jeg vil bygge en lille funktion som kan standse den lidt, jeg ved ikke hvor lang tid det tager, men du må jo afgøre hvad du vil \"betale\" når jeg har fået det til at virke!
jeg tror du skal kigge på JMail\'s mailmerge, den kan sætte dine mails i que på serveren - altså i kø.....det burde virke og er anbefalet fra JMail til benytte til massemailings......
som er en PDF fil hvor der blandt andet på side 33 og tidligere beskrives hvordan man simpelt kan sætte det op, prøv det først, jeg synes det er synd at få scriptet til at stå og \"holde\" sig selv fremfor at få smidt mailsne videre på den mest optimale måde så både du, server og mailserver er tilfredse med hastighed og sikkerhed.......
det kan ikke passe, det jeg lige har sendt dig virker på azero.dk ved at sende en ad gangen.....det er sikkert.......sammen med lazysend opnår du faktisk at du kan sende en mail på langt under 1 sekund, fordi den ikke tjekker om den bliver sendt, det kan du alligevel ikke bruge til noget at den før og det gør du såvidt jeg kan se heller ikke nu.....jeg ved at denne metode kan sende mere end 1700 mails på under 17 min........husk at sætte timeout meget langt op i toppen af dit dokument: <% Server.ScriptTimeout = 10000 %>
Jeg tror jeg vil lave en test på hvor lang tid det tager at sende 300 mails ud. En for en. Og så evt lilleg en On Error Resume Next ind. Så det kun en enkelt eller sådan man går glip af..
fordi (såvidt jeg har forstået det) den gør det hele mere simpelt, den smider det videre med det samme uden at vente på at få validering fra mailserveren om alt gik godt, dermed tjekker den intet, den sender bare - og det går hurtigt :-)
lazysend = true hakker snildt 10K mails afsted på under 10 sekunder.. det kommer kun an på hvor hurtig serveren er til at få hakket dem videre til mailserveren
tjahhh, nu har jeg selv lavet netop dette, jeg havde bare ikke tænkt over at det var løsningen fordi det lød som om din mailserver der var helt gak.....men da du sagde det var azero.dk var jeg ikke i tvivl om hvad løsningen var :-)
det er svært at svare på begge, men det er mere end 100.000 mails vil jeg tro, det er forskellige kunder der bruger det, jeg har bare lavet det :-) desuden vil jeg allerede nu anbefale dig at skifte basen, access er for intranet med maks 3 simultane brugere, hvis du spørger mig :-) ved et skifte vil du sikkert kunne hente lidt mere tid, fordi asp afvikleren sikkert venter på basen......
tak og i lige måde........det var rart at det kom til at virke....
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.