ユーザーがサインアップしてからアクティベーションメールを受信する必要があるWebサイトがあります
これを行う現在の方法は、登録スレッド自体に電子メールプロセス全体を含めることです。
Register() {
registerUser()
sendActivationMail()
return View(Successpage)
}
sendActivationMailには、メールサーバーに接続してメールを送信するために必要なすべてのコードが含まれています。これは最善の方法ではなく、すべてをテストするためにすばやく実行しました。問題は明らかです。ページは他のすべてが終了した後にのみ返されるため、ユーザーは「ページにサインアップしていただきありがとうございます」を待つ時間が長くなります。
私たちが認識しているこれに対する適切なオプションは次のとおりです。
- 登録のデータベース側が完了したら、新しいスレッドを開始して電子メールを送信し、すぐに元のスレッドを返します。
- 電子メールをデータベースに永続化し、継続的に実行され、x分ごとに送信する新しい電子メールがないかデータベースをチェックするスレッドを作成します
- Amazon SimpleEmailServiceなどのサードパーティのEメールサービスを使用します。
他に使用する方法はありますか?上記のどれかが最高として際立っていますか?
助けてくれてありがとう。