私は次のことを達成する必要があります -春のアプリケーションでスケジュールされた電子メールを送信しますか?
- 年に30回の周りの周り6000のユーザーに電子メールを送信します。特定の時刻に深夜12時にメールを送信することがあります。
- アプリケーションで再試行機能を提供する必要があるため、何らかの理由でアプリケーションが一部のユーザーに電子メールを送信できなかった場合は、最後に失敗とマークするまでに3回(3日まで)再試行する必要があります。
- あらかじめ定義されたテンプレートを使用して電子メールを送信する必要がありますが、その中に動的なデータがあります。
私のアプリケーションのハイテクスタックは - Javaの、春ブーツ1.4、Oracleデータベース、CA autosysジョブスケジューラは、BPMをactiviti(今のようActivitiを使用していないが、それは最善の解決策である場合、それを使用することができます)
マイ現在のソリューション: -
- これらのジョブを定義するには、autosysスケジューラを使用します。
- 私の残りのサービス(spring + java + oracle tech stack)を呼び出すと、すべてのアプリケーションロジックを実行し、Apache Commonsの電子メールは自分のsmtpサーバーを使用して電子メールを送信します。
私の質問 - このケースでメールを送信するにはどうすればよいですか?私はリトライ機能を実現するために様々なテーブルを維持しなければならないので。私はautosysスケジューラの代わりにactivitiを使うべきですか?またはこの電子メールスケジューリングのための春のフレームワーク自体?