19. februar 2009 - 15:19Der er
5 kommentarer og 1 løsning
Udsending af mails ved besked. med det samme, eller ved job efterfølgende
Jeg har et community site hvor jeg skal beslutte hvordan jeg vil håndtere mailudsending til brugerne når de får en besked.
Skal jeg sende mailen ud med det samme til brugerens email. altså når en person skriver, og så sende en mail til beskedmodtager. Eller skal jeg lave et job som kører hvert 10-20 minut og som tager og sender mails ud til alle brugere som har ulæst post?
Det er ikke brugeren som sender som forventer noget. Det er modtageren af brevet som på mail skal modtage en besked om at "Du har ulæst post i din indbakke"
Når en bruger sender et andet brev til brugeren, sendes selve brevet i vores system, og så sætter man en queue om at der skal sendes en mail ud til modtageren.
Hvert 10 minut kører der så et job som hiver alle dem ud i Queue som ligger der, sender dem en efter en, og samtidigt sletter man dem enkeltvis i databasen efter afsendelse.
Jeg er lidt bekymret med det sidste her. At slette dem enkeltvis. Hvordan kan jeg bedst slette en masse rækker i databasen? Alle mine ID'er har GUIDS som primary keys.
Uanset om sender skal have noget saa vil han sikkert ikke bryde sig om at app bare haenger i 10 minutter mens der sends en masse email ud.
----
Naar du bruger database er hver X'te minut oplagt.
Hvis du brugte message queue var det oplagt at starte med det samme.
----
Jeg kan ikke se noget problem med at slette. Enkeltvist er sikkert OK, men du kan naturligvis bruge: DELETE FROM tabel WHERE id IN (a,b,c,d,...) hvis du foretraekker.
Jeg endte med at lave et job som kører hvert 10'ende minut, som går alle disse mails igennem og sender ud.
Måske skal det køre oftere.
Jeg lukker spørgsmålet.
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.