『Whenever』を使ってタスクを自動化!

※この記事は読者によって投稿されたユーザー投稿のため、編集部の見解や意向と異なる場合があります。また、編集部はこの内容について正確性を保証できません。

CTC教育サービスはコラム「『Whenever』を使ってタスクを自動化! 」を公開しました。
んにちは。 ゼネットの藺藤です。
 さて、みなさんは"自動化"はお好きですか? 私は好きです。(*1) 今回のコラムでは、Rails上で定期実行するジョブの管理に便利なGem、「Whenever」を紹介します。(*2,*3,*4) 
 Linux系OSでは、定期的にジョブを実行するための仕組みとしてcron (crontab)が用意されていますが、「Whenever」はcronの仕組みをより扱いやすいようにRubyを使って記述・拡張したツールであると言えます。
 Railsアプリケーションにおいて自動化したいケースとしては、「大量データに対する集計・統計処理」、「logファイルの定期的な削除」、「非同期で処理すべきタスクの実行(例えば、指定時刻にメール送信)」等が挙げられるでしょうか。 ここで述べたような要件がある場合には、「Whenever」の導入を検討するのもよいでしょう。
 それでは早速「Whenever」の使い方を見てゆきましょう。 なお、今回の動作確認環境は以下の通りです。

•CentOS 6.7
•Ruby 2.1.5p273
•Rails 4.2.4
準備
まずは新規のRailsアプリケーションを作成します。 私は「whenever_sample」という名称にしました。

$ cd ~/work
$ rails new whenever_sample 次に、「Whenever」を使えるようにするため、Gemファイルに以下を追記します。

[Gemfile]

(初期設定されているgemの後ろに次を追加)
gem 'whenever', require: falsebundle install を実行します。

$ bundle install
...
Installing whenever 0.9.4
...「Whenever」のインストールに成功しました。 現在のバージョンは 0.9.4 のようです。

 ジョブの登録は config/schedule.rb に対して行います。 ファイルの生成には次のコマンドを利用します。

$ wheneverize .

[add] writing './config/schedule.rb'
[done] wheneverized!schedule.rb ファイルが生成されました。

この続きは以下をご覧ください
http://www.school.ctc-g.co.jp/columns/masuidrive/masuidrive22.html

この記事が役に立ったらシェア!
メルマガの登録はこちら Web担当者に役立つ情報をサクッとゲット!

人気記事トップ10(過去7日間)

今日の用語

HCD
「Human-Centred Design」(人間中心設計)の略称。機械やシステ ...→用語集へ

インフォメーション

RSSフィード


Web担を応援して支えてくださっている企業さま [各サービス/製品の紹介はこちらから]