2016-07-17 17 views
0

私は、実行するためにSidekiqを使用しています(例えば、1ヶ月、3ヶ月、6ヶ月など)、アクションがスケジュールされる頻度を定義する入力をユーザーに渡す必要があるRailsアプリケーションを持っていますバックアップジョブ、スケジューリングのための統合されたSidetiqなどがあります。 Sidekqは当初、カスタム入力が必要な繰り返しタスクに問題がありました。 3ヶ月後に実行されると、メソッドにある引数(time_last_run、time_of_next_run)が発生します。これは、ユーザーの詳細が定期的なアクションに渡される必要があるため、私にとっては問題です。これは、数年前のこの問題のSidekickの作者によって議論されています。https://github.com/tobiassvn/sidetiq/issues/37Sidekiqにカスタム引数を渡す

これは私を失わせてしまいます。これは私の最初のRailsアプリケーションであり、ユーザー入力による繰り返しのバックグラウンドタスクを他にどのように実行するのかよく分かりません。ご覧のとおり、Sidetiqの問題はまだ解決されていません。有効な選択肢がないかどうかはわかりません。誰も私がこれに対する回避策を書く方法を知っていますか?別の言い方をすれば、私はこの機能を(Sidetiqの有無にかかわらず)どのように実装できますか?

答えて

0

固定期間の後にジョブを実行するとします。これはSidekiq.perform_inメソッドで実現することができます。最初のパラメータとして時間を秒単位で渡し、次に通常どおり渡すすべてのパラメータを残す必要があります。

これがあなたが探しているものです。