私はそれに新しいですと、私は本当によくエリクサーを理解していない場合は、私を許して...スーパーバイザ
私は動的にcronジョブを作成するにはcronのAPIとしてquantum-elixirを使用しています。誰かがルートにPOSTSしたら、私はEcto Repoにcronジョブの詳細を保存し、同時にQuantum.add_job
で量子ジョブを作成します。
私はサーバを閉じて再起動すると、再起動しても生き残れないため、すべてのcronジョブを再追加する必要があります。だから、もし私のアプリケーションがクラッシュすると、私はすべてのクーロンの仕事を失うことになると思った。 (私はGoogleコンピューティングエンジンでアプリケーションをホストするシナリオについて考えていますが、計算機インスタンスのリセット、つまりボックスのアップグレードなど、理由を問わず)
これらのcronジョブを保持している間、私のアプリを再起動する適切な方法はありますか?私のアプリケーションモジュールのstart
機能で
worker(Task,[MyApp.RebootTask, :reboot, []], restart: :transient)
:
は今の私は、次があります。
これは正しいアプローチですか?他に考慮すべき点は何ですか?より一般的なアプローチは、あなたのconfig.exs
に(そうでない場合は名前付きまたは)あなたのcronジョブを定義することですので、任意の指導を大幅に