
Wir nutzen AWS-Dienste in der Region North Virginia seit einigen Jahren. Da die meisten unserer Kunden in Asien sind, wollten wir unsere Server in die Region Singapur verlagern, um die Latenz zu verringern. Wir haben unsere EC2- und RDS-Server nach Singapur verlagert, was zu einer geringeren Latenz führte. Der SES-Endpunkt war jedoch immer noch North Virginia (da es in Singapur keinen Endpunkt gibt). Nachdem wir dies getan hatten, stellten wir fest, dass sich die Zeit zum Versenden unserer Newsletter-E-Mails drastisch verringerte (von 12.000 E-Mails/Stunde, als EC2/RDS in North Virginia waren, auf 2.000 E-Mails/Stunde, als EC2/RDS nach Singapur verschoben wurden).
1) Ist dieser Rückgang der E-Mail-Sendegeschwindigkeit zu erwarten, wenn sich der SES-Endpunkt in Nord-Virginia und EC2/RDS in Singapur befinden?
2) Wenn ja, gibt es eine Lösung, mit der wir in Singapur weiterhin EC2/RDS nutzen und unsere E-Mails trotzdem schnell versenden können?
Ich wäre für jede Hilfe sehr dankbar.
Bitte lassen Sie uns wissen, wenn Sie weitere Informationen von uns benötigen.
Antwort1
Es ist durchaus plausibel, dass der reduzierte Durchsatz beim Senden von E-Mails auf eine erhöhte Latenz zurückzuführen ist. Betrachten wir die Zahlen umgekehrt und stattdessen die Zeit, die zum Senden einer E-Mail benötigt wird:
3600 Sekunden / 2000 E-Mails = 1,8 Sekunden/E-Mail
3600 Sekunden / 12000 E-Mails = 0,3 Sekunden/E-Mail
Ein Großteil der Zeit, die beim Senden der E-Mail benötigt wird, ist wahrscheinlich auf Hin- und Rückwege zwischen Ihrer EC2-Instanz und SES zurückzuführen. Insbesondere SMTP ist recht gesprächig und erfordert mehrere Hin- und Rückwege, um eine Nachricht zuzustellen.
Es gibt mehrere Möglichkeiten, wie Sie diesen Satz erhöhen können:
- Führen Sie Ihren E-Mail-Versandprozess im Multithread-Verfahren durch, sodass mehrere E-Mails gleichzeitig versendet werden. Dadurch verringern Sie die längeren Transaktionszeiten.
- Führen Sie in Virginia eine Instanz aus, die ausschließlich zum Versenden dieser E-Mails dient. Senden Sie ihr einfach eine Adressliste per Massenübertragung und lassen Sie es arbeiten.
- Prüfen Sie die Verwendung der SES-APIs anstelle von SMTP. Diese ermöglichen Ihnen möglicherweise das Senden von E-Mails an mehrere Benutzer gleichzeitig und gewährleisten dennoch für alle Nachrichten den entsprechenden Umschlag.