eMails versenden mit Mail_Queue

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • eMails versenden mit Mail_Queue

    Ich möchte gerne Massenemails unter Zusatz von Mail_Queue versenden, oder gibt es da noch was besseres?
    Wenn ich nun eMails damit verschicke, sagen wir mal 100 Stück und per Cronjob das Script im 10 Minutentakt ausführen lasse, ist dann auch gewährleistet das, sofern das Script noch am laufen ist, nicht die selben eMails versendet werden? Wahrscheinlich kann ich damit nicht überprüfen ob der Prozess von der vorigen Aktion noch am laufen ist, oder doch?
    » http://www.htaccess-generator.com

  • #2
    Ob der vorherige Cron-Lauf bereits fertig ist oder noch läuft kannst du sehr wohl feststellen. Entweder suchst du in der Prozessliste (ps) danach oder du läßt das Script ein Semaphore anlegen und nur dann laufen, wenn dieses nicht mehr da ist.

    PHP-Code:
    <?php
    if (!file_exists('mailsend.sem')) {
        
    touch('mailsend.sem');
        
    // Mails senden
        
    unlink('mailsend.sem');
    }
    ?>
    Ob es etwas besseres gibt als Mail_Queue weiß ich nicht. Wahrscheinlich nicht, denn eigentlich ist es nur ein Helfer, um Mails in eine DB zu legen und später en mass oder einzeln zu versenden.
    Meistens braucht man das gar nicht sondern kann die Mails direkt in dem Moment erzeugen, in dem sie auch versendet werden sollen.

    PS: Obiger Code ist nur ein Ansatz. Sollte noch gegen Race Conditions abgesichert werden, z.B. mit flock().
    Zuletzt geändert von onemorenerd; 31.07.2007, 11:35.

    Kommentar


    • #3
      Siehe dazu auch Semaphore, Shared Memory.
      Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

      Kommentar


      • #4
        Ja echte Semaphores wären besser, aber sysvsem ist bei den meisten Webspace-Providern nicht enabled und unter Windows gibt es sowas gar nicht.

        Kommentar


        • #5
          Erstmal danke für die schnelle und kompetente Antwort...

          gibts es bereits eine Fertiglösung als Webanwendung die es mit dem Massenversand aufnehmen kann? Wahrscheinlich ist es sinnvoller eine eMail Plattform zu kaufen als eine eigene zu entwickeln. Es muss aber halt mit dem Massenversand zurecht kommen... gibt es da was gescheites?
          » http://www.htaccess-generator.com

          Kommentar


          • #6
            Da gibt es bestimmt einiges. Da mit Massenmailings i.d.R. geldwertes Marketing verbunden ist, wird es vor allem viele Scripte geben, die man kaufen muß. Ich kenne allerdings nichtmal kostenlose, da ich mir bisher immer selbst geholfen habe. Ist nämlich gar nicht schwer, ein paar tausend Mails jede Woche - oder event-getrieben ein paar weniger - zu versenden.
            Cron > sendmails.php > $body = ...; foreach($recipients ...) mail();
            Rumsbums Nikolaus.


            Nagut, ganz so einfach ist es dann doch nicht. Du mußt dir noch Gedanken machen, woher du $recipients füllst, wieviele Mails pro Run max. rausgehen sollen und derlei Kleinkram. Dazu hatten wir hier übrigens gerade eine Thread, such mal!

            Kommentar

            Lädt...
            X