久々にRailsプラグインの紹介です。

BackgroundFu は、Jacek Becela氏による、時間がかかる処理をバックグラウンドプロセスで実行するためのRailsプラグインです。

使い方ですが、まずはインストール。

   1  % svn export https://svn.trix.pl/public/background_fu vendor/plugins/background_fu

続いて、各種ファイルを生成するGeneratorを起動します。

   1  % ./script/generate background

バックグラウンド処理の情報を管理するテーブルを作成するためのmigration ファイルが生成されるので、マイグレーションを実行します。

   1  % rake db:migrate

これでひとまず準備完了。あとは、lib/workersの下に生成されている exampleファイルや README を参考にしながら、Workerクラスを作ります。

Workerクラスの例

   1  class ExampleWorker
   2    def add(a, b)
   3      a + b
   4    end
   5  end

このWorkerを呼び出す場合は、以下のようにします。

   1  Job.enqueue!(ExampleWorker, :add, 1, 2)

単純に時間がかかる処理を裏で実行したいだけならこれでOKです。 簡単ですね。 必要であれば、JobのIDを使ってもうちょっと複雑な処理も実行可能です。

Workerプロセスの起動は、以下のコマンドで行います。

   1  % ./script/daemons start

stopで停止、restartで再起動です。RAILS_ENVを指定する場合は、

   1  % RAILS_ENV=production ./script/daemons start

こんな感じですね。デフォルトではdevelopment環境になります。

See Also

posted by Png genki on Tue 25 Mar 2008 at 03:58

しばらく前からOpenIDについていろいろ調べているのですが、 個人情報が一箇所に集中することで、便利になる反面、 セキュリティ上のリスクが高まるという指摘があります。

確かにその通りで、対策を考えていたのですが、 マスターキーを秘密分散方式で複数作るのが、妥当な解決策かもしれないと思いました。 2つ鍵穴があるドアのイメージですね。 どちらか一方を奪われても安全なわけです。 セキュリティ強度の必要に応じて3つ、4つと増やしても良いですね。

現状のOpenIDの仕様の上でうまいこと運用できないかなあ。

See Also

posted by Png genki on Tue 25 Mar 2008 at 02:58
Contents
BackgroundFuの使い方
分散マスターキー方式による認証
Comments
瀧内元気: MacOS版は以下にあります * [genki/ViMouse](https://githu... '23-1
dsjf: https://gist.github.com/6bf1bf2c3cbb5eb6e7a7 これ... '13-1
瀧内元気: おお、チェックしてみます。thx! '11-12
overisland: Reeder for iPhone もこの UI を実装していますね。 '11-12
瀧内元気: その情報は見たのですが、以下のサイトによると、現在はまた必要になってるっぽいんですよね。 ... '11-12
Services from s21g
twpro(ツイプロ)
Twitterプロフィールを快適検索
地価2009
土地の値段を調べてみよう
MyRestaurant
自分だけのレストラン手帳
Formula
ブログに数式を埋め込める数式コミュニティ