Ankündigung

Einklappen
Keine Ankündigung bisher.

paar fragen

Einklappen

Neue Werbung 2019

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

  • paar fragen

    Hallo zusammen,

    ich hab mal ein paar Fragen:
    1. Gibt es eine Klasse oder prinzipiell die Möglichkeit mit php mails in die queue von qmail zu schicken und versenden zu lassen?
    2. Kann man Email-Adressen anlegen lassen? Z.B für Domain xy.de?
    3. Wenn ich 20.000 oder 1.000.000 Datensätze aus einer db lese, habt ihr perfomance erfahrungen? Kann ich mir beim scriptlauf anzeigen lassen, wo das script gerade ist, und einen abbruch durch die max. Scriptlaufzeit verhindern?

    Lg ralf


  • #2
    [MOD: verschoben]

    Super Titel btw.
    --

    „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
    Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


    --

    Kommentar


    • #3
      Ralf, nimms mir nicht böse, aber da kann man ja einen Roman drauf antworten. Wie wärs denn, wenn du deine Fragen erstmal auf konkrete Probleme einschränkst? Z.B.

      3. Wenn ich 20.000 oder 1.000.000 Datensätze aus einer db lese, habt ihr perfomance erfahrungen?
      Da ist dir dann auch nicht geholfen, wenn einer mit ja oder nein antwortet
      ich versuchs mal knapp:
      1. ja (z.b. swiftmailer, phpmailer, ...)
      2. unter welcher umgebung? Eigener Sever, webspace,...?
      3. bei 20k mails haust du die nicht alle auf einmal raus, sowas regelt z.b. ein cronjob

      grüße
      I like cooking my family and my pets.
      Use commas. Don't be a psycho.
      Blog - CoverflowJS

      Kommentar


      • #4
        Massenversand von großen Mengen Mails geht so:

        1) Du erfindest eine Spalte sendestatus enum 'nein','ja', der defaultwert ist 'nein' . Vor dem Mailing setzt du den Sendestatus bei allen oder den gewünschten Empfängern auf 'ja':

        PHP-Code:
        $sql "UPDATE mails SET sendestatus = 'ja' WHERE anrede='Herr'";
        ... 
        2) Du definierst im Script, wieviel Mails maximal in einem Durchlauf rausgehen sollen:

        PHP-Code:
        $maxnum 200
        3) Du liest genau diese Anzahl Mails aus deiner Tabelle und sendest denen die Mail:

        PHP-Code:
        $sql "SELECT email FROM mails WHERE sendestatus = 'ja' ORDER BY id LIMIT " $maxnum;
        $res mysql_query($sql);
        while ( 
        $row mysql_fetch_assoc($res) ) {
          
        // sende mail an $row['email']
        }

        // Sendestatus zurücksetzen
        $sql "UPDATE mails SET sendestatus = 'nein' ORDER BY id LIMIT " $maxnum;
        ... 
        Wenn $maxnum durch ist, lässt du das Script sich selbst aufrufen. Das geschieht am besten mit einem einfachen HTML-forwarding per Meta-Refresh. PHP-Header.location verbietet sich, weil der PHPmailer gerne mal Fehlermeldungen ausgibt, z.B. bei unsauberen Emailadressen, und dann header.location nicht mehr funktioniert.

        Das Script ruft sich solange auf, bis alle Emails mit sendestatus='ja' abgearbeitet sind. EIne Ende-Bedingung musst du noch einbauen (einfach prüfen, ob die while-schleife durchlaufen wurde.


        Auf einer Linux-Kiste mit nicht zu schmaler Ausstattung kriegst du ca. 100.000 bis 120.000 Mails pro Stunde anfangs durch. Diese Zahl verringert sich dann dramatisch, wenn du sehr viel Bouncer hast, da diese ja irgendwie zurückfliegen und vom Server verarbeitet werden müssen. Bei zu vielen VBouncern kannst du das mailen aber auch ganz lassen, weil die großen Provider die Mails dann garnicht erst zustellen und deine ServerIP als Spamquelle ansehen.
        PHP-Code:
        if ($var != 0) {
          
        $var 0;

        Kommentar


        • #5
          Auf einer Linux-Kiste mit nicht zu schmaler Ausstattung kriegst du ca. 100.000 bis 120.000 Mails pro Stunde anfangs durch.
          Das ist doch stark vom Mailserver abhängig. Ich denke schon, dass der wesentlich früher dichtmachen wird.
          --

          „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
          Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


          --

          Kommentar


          • #6
            ich finde das ziemlich wenig, da ich am freitag ein system gesehen habe das 500 Mails/Sekunde verschickt.

            Aber ich erklär noch mal genauer was ich will:
            Es geht, wie ihr schon richtig erkannt habt, um ein Newslettersystem. Vorerst zum Testen läuft das auf ner normalen Maschine, später sind das dann mehrere VM's bei denen ich die DB, der Mailgenerator und der MTA getrennt habe. Ich wollte nun mal zum optimieren so vorgehen:

            Ich erstelle 1.000.000 Datensätze an Empfängern, da ich aber nicht 1.000.000 Adressen anlegen will, dachte ich das man das vielleicht auch über PHP gleich mitmacht, also z.B. für Datensatz 14329 wird test-14329@myserver.local angelegt. Dann soll die Mail generiert werden, und an die Adressen versandt werden, was ich ja dann im SMTP-Ausgang sehen könnte.

            lg ralf

            Kommentar


            • #7
              ich habe heute von nikosch nur unqualifiziere antworten bekommen und statt einer hilfe wurd eich auch verschonben ins nirvana..... komisches forum

              Kommentar


              • #8
                Und Du meinst, das berechtigt Dich jetzt dazu, auch noch fremde Threads zuzuspammen?!

                statt einer hilfe wurd eich auch verschonben ins nirvana..... komisches forum
                Wer lesen kann ist klar im Vorteil. Im „Nirvana“ steht sehr deutlich, was mangelhaft an Deinem Postinmg ist. Du glaubst doch nicht, dass wir jeden hingerotzten 2-Zeiler hier ausführlich beantworten, nur weil Dir es zu anstrengend ist, nen anständigen Thread zu eröffnen?!
                --

                „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                --

                Kommentar


                • #9
                  können wir uns bitte um mein problem kümmern, die antwort von nikosch war bisher schon sehr hilfreich

                  Ich habe mir überlegt, aufgrund der rechtlichen frage, ist es nicht sinnvoll das der Mailgenerator, der die Mails generiert, diese in die DB speichert und ein anderes Programm sich dann um die Versendung kümmert?

                  Mir ist auch nicht ganz klar wie ich das ganze nur mit PHP mache, wenn der User eine bestimmte Sendezeit für den Newsletter wünscht, muss ich mit PHP n Cron anpassen. Aber wenn man bei großen Systemen von 300 Kampagnen am Tag ausgeht, bei denen zusammen 10.000.000 Mails versendet werden, dann ist die CronTab doch auch überlastet, oder?

                  Kommentar


                  • #10
                    Sorry, aber reden wir hier über Spamservices oder was?
                    --

                    „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                    Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                    --

                    Kommentar


                    • #11
                      nein, emailmarketing und newsletterservice

                      Kommentar


                      • #12
                        Also bei 10 Millionen E-Mails am Tag, würde ich vielleicht mal drüber nachdenken, mir für 100 Euro ne passende Software zuzulegen.

                        Wozu Du ne Million E-Mails anlegen willst, erschließt sich mir nicht.
                        --

                        „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                        Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                        --

                        Kommentar


                        • #13
                          Wir entwickeln ein eigens Tool, und für 100EUR bekommst Du nix gescheites, glaub mir.

                          Du musst jederzeit rechtlich nachweisen können, dass die Mail versendet wurde, was für ein Inhalt darin enthalten war, und wer Sie bekommen hat. Deswegen muss diese auf alle fälle gespeichert werden.

                          Kommentar


                          • #14
                            Das hat allerdings mit dem Versand wenig zu tun. Sondern müsste genau genommen beim MTA ansetzen. Mit einer Datenbank, in die das reinläuft bist Du mit ziemlicher Sicherheit nicht auf der rechtlich sicheren Seite.
                            Ich habe das Thema mal auf ner Veranstaltung zur anderen Seite (Archivierung von Eingangsmailverkehr) gehört und der Aufwand, der dort für Rechtssicherheit betrieben werden muss ist enorm. Im Endeffekt darf da kein Admin drankommen, Fragen wie Spamfilter vs. Archivierung wurden beleuchtet etc.

                            Irgendwie sagt mir schon mein Gefühl, dass ein simples PHP-Programm da der falsche Weg ist.
                            --

                            „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                            Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                            --

                            Kommentar


                            • #15
                              von simple und einfach war nie die rede

                              was wäre deiner meinung nach besser? java?

                              Kommentar

                              Lädt...
                              X