Meine Datenbank enthält mehr als 20.000verifiziertE-Mail-Adressen. Dies sind E-Mails von Benutzern mit der Berechtigung (Benutzer legen dies in den Optionen fest), Newsletter, Updates usw. von der Website zu erhalten. Ich habe ihre E-Mail-Adressen eigentlich nie für irgendeinen Zweck verwendet, aber jetzt möchte ich, dass Benutzer regelmäßig (einmal im Monat oder alle zwei Monate) einige Updates von der Website erhalten. Ich frage mich eher, wie ich dieselbe E-Mail so schnell wie möglich an 20.000 Benutzer senden kann und welche Einschränkungen dabei möglicherweise auftreten.
Ich habe einige Ideen, wie man das mit Cron und der in PHP integrierten Mail()-Funktion machen kann, aber ich kann nicht 20.000 E-Mails auf einmal versenden (darf ich das?). Außerdem weiß ich, dass E-Mails höchstwahrscheinlich im Junk-/Papierkorb-/Spam-Ordner des Empfängers landen (das ist in Ordnung), aber ich bin mir nicht sicher, ob es Gesetze gegen das Versenden von Massen-E-Mails oder Einschränkungen gibt (definiert durch den Hosting-Dienst).
Ich brauche eine Antwort darauf, wie ich das machen kann und wie ich diese Aufgabe am besten erledige. Das ist keine „Gib mir eine Lösung“-Frage, ich brauche nur ein paar Tipps, weil ich in meinem Leben noch nie mehr als 5 E-Mails auf einmal verschickt habe und keine Antwort auf diese Frage finden konnte. Ich frage mich, wie große Dienste wie Facebook, Twitter und YouTube ihre Benutzer (wahrscheinlich Millionen von ihnen auf einmal) informieren?
Hinweis: Entschuldigen Sie, wenn dies nicht der richtige Ort ist, um diese Frage zu stellen. Ich habe noch einmal darüber nachgedacht, wo ich sie posten soll, hier oder bei StackOverflow, aber so wie mein Problem aussieht (ich stelle keinen Code bereit oder verlange danach), schätze ich, dass sie bei SO als „nicht konstruktiv“ oder sogar „off topic“ geschlossen würde.
Antwort1
Wenn Sie alle E-Mails auf einmal oder einzeln versenden, werden Sie auf einige Probleme stoßen.
SPAM-BLOCKER
Um diese Menge an E-Mails zu versenden, müssen Sie SPF einrichten, möglicherweise eine Art Zertifikatsignatur, und einen Server mit einer statischen IP-Adresse verwenden, vorzugsweise mit Reverse-DNS. Wenn Ihre E-Mail-Adresse noch größer wird, müssen Sie sich direkt an einige E-Mail-Postmaster wenden, um sich unter Angabe legitimer Gründe und Unterlagen auf eine Whitelist setzen zu lassen. Früher haben wir täglich etwa 250.000 E-Mails an unsere Abonnenten verschickt, manchmal viermal im Monat.
Wir haben unser eigenes Programm geschrieben, aber es sind viele verfügbar.
Sie können auch einfach jede E-Mail in einer Schleife abspielen und sie einzeln senden. Dann versuchen Sie, sie in Hyper-Threads zu unterteilen und sie schließlich in Domänen aufzuteilen. Mit etwas geschickter Programmierung können Sie sie vielleicht alle in etwa einer Stunde senden.
Viel Glück
Antwort2
Kurze Antwort: Verwenden Sie eine statische IP-Adresse und Reverse DNS. Sie können, aber senden Sie sie nicht innerhalb einer Stunde. Mailserver mögen Tausende von E-Mails in kurzer Zeit nicht, Sie werden blockiert. Ich würde sogar noch mehr sagen, wenn all diese E-Mails von einem Mailserver kommen, der gerade erst im Netz aufgetaucht ist.
Lange Antwort: Ich versende einmal pro Woche 2.000 E-Mails. Ich verwende zum Versenden ein Programm in PHP, es ist kostenlose Software, ich weiß nicht, ob ich es hier nennen darf, also werde ich es nicht tun. Die Website ist orange, sie ist in PHP, um Listen (Newsletter) zu verwalten. Mein Server ist ein 1 GB RAM Xeon 2,4 GHz 4 Kerne mit Debian, er versendet 4 Mails pro Sekunde (jeweils etwa 100 KB) mit Postfix (alle ausgehenden Mails werden auf Viren geprüft), das sollten also 14.000 pro Stunde sein. Wenn Sie zu viele E-Mails an eine Domain senden, könnten einige von ihnen eine Sperrfunktion haben. Yahoo hatte/hat so etwas wie Greylisting, ich erinnere mich, dass ich sie 3 Monate lang mehr als einmal kontaktieren musste, bis sie die vorübergehenden Ablehnungen einstellten. Mein ISP lehnt E-Mails ab, wenn er in kurzer Zeit zu viele Verbindungen feststellt, deshalb habe ich in Postfix die Anzahl der Verbindungen verringert, ich glaube von 20 auf 10. Gmail versendet übrigens 5.000 E-Mails pro Sekunde, das habe ich in einer Debconf (10,11,12) von einem der Entwickler gehört.