タグ

Railsとcronに関するa_t_o_a_t_oのブックマーク (2)

  • WheneverでRailsのバッチ処理 - ひげろぐ

    WheneverはCronを利用して繰り返し処理を行うためのライブラリ。 シェルコマンドやRailsのRunner、RakeタスクなどのジョブをCronで実行できる。 実際のところCrontabへの登録を補助してくれるだけなのだが、そのシンプルさがかえって分かりやすい。 バッチ処理の管理にうってつけ。 タイトルではRailsとなっているがRails以外でも利用できる。 以下はRails3での使い方メモ。 導入 Gemfileに以下の行を追加してbundle install gem 'whenever', :require => false schedule.rbの編集 config/schedule.rbにスケジュール設定を書いていく。 bundle exec wheneverize . を実行するとひな形を作ってくれるので、それを元に編集していくのが吉。 スケジュールは「every」に続

  • rails の model メソッドを簡単に daemon 化する方法

    Rails で普段開発される方は、 ruby script/console や ruby script/runner は非常に重宝されていると思います。 これらのコマンドは、Web アプリを作成するために作った model  のメソッドを、簡単に batch や コマンドラインのインタラクティブアプリに変更することが出来、cron 化やデバッグに大変重宝します。 今回、その script/[hoge] に、新たなスクリプトを1つ追加しましたのでご紹介いたします。 今開発中のアプリで、あるバッチを数秒単位で実行する必要がでてきました。 バッチを定期実行するとき、例えば下記のようなシェルファイルを作成し、 #!/bin/sh RUBY="/usr/local/bin/ruby" DATE=`date +"%Y%m%d"` cd [RAILS_ROOT] $RUBY script/runner

  • 1