質問

これは stackoverflow に関する FAQ のように思えるかもしれませんが、私の要件は少し異なります。以前、Ruby でバックグラウンド プロセスを実行するために BackgroundRB と DJ を使用しましたが、今回の要件は、膨大なデータセットに対して大量の分析と数学的計算を実行することであり、これを実行する必要があるのは月の最初の 15 日程度だけです。 。これを踏まえると、この目的を達成するために cron を使用して Ruby スクリプトを実行したくなります。

私が知りたいこと/理解したいことは次のとおりです。1 - cronを使うのは良い考えですか(私はシステム管理者ではないので、cronの基本的なアイデアは持っていますが、完璧にやる自信はあまりありません) 2 - DJを月の最初の15日間(cronの使用あり/使用なし)にのみ実行するように変更し、その日のキュー内のすべてのジョブが終了したら停止して終了することはできますか(新しいジョブに対して毎回DBにpingを実行したくありません...DJの開始時にキューにあるジョブが何であれ、それだけです)。

質問の仕方が適切かどうかはわかりませんが、この方向での助けをいただければ幸いです。

ありがとう

役に立ちましたか?

解決

のcronの「分時間日月DAYOFWEEK」時間指定では、毎月の十五を通して3時33分午前の第一は、「33 3 1-15 * *」になります。

他のヒント

のcronを使用すると、本当に簡単だろう、とあなたは例がたくさんあるし、それが信頼されています。



とにかくここRailcastsからいくつかのスクリーンキャストは、あなたが見てみたいことがあります

スターリングとWorklingする

カスタムデーモン

うん、なぜか? cronをして行きます。これはよく定期的なタスクを実行していると信じられないほど簡単使用するに適し、野生で本当に十分にテストされたのです。 (それは非常に簡単だが)あなたも、crontabの構文を学習する必要はありません - ちょうど(このオプションは、一部のLinuxディストリビューションで利用可能であるかもしれない)を/etc/cron.dailyにスクリプトをドロップします。

、私は「最初の月のfiteen日」ことについてわからないんだけど、あなたが簡単にあなたのタスク内でこの条件を処理することができますよね?

EDITます:

だけ日間の一定範囲でタスクを実行する方法を参照するには額面の答えをチェックします。

こんな要望もありました。「自動定期タスク」レシピ 75 に従いました。 高度な Rails レシピ. 。レシピは David Bock によって書かれています。これには、cron と capistrano を使用してこれを実現する方法に関するいくつかのコード スニペットとガイドラインが含まれています。ただし、ターゲット マシン上に存在する必要があるユーザー/権限に関して未解決の (ただし言及されている) 問題があります。これを正しく行うのはそれほど難しいことではありません。忘れずにそれをデプロイメントの Capistrano スクリプトに組み込むだけです。

David Bock はこれに取り組み続け、現在 cron で使用する gem を作成しているようです。見る 彼のブログ, 、フォローしてください github のクロンドンクルス. 。Crondonkulous はこのユーザー/権限などを処理してくれる可能性がありますが、私は試していません。

ヤール

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top