Rails使いよspork, zeusからspringへ!

Ruby

Rails application preloader といえば sporkzeus を使っている人もいるかと思います。

今後、期待できる preloader として spring を教えてもらいました。

ruby

springはzeusと類似していますが、springはrubyで実装されています。Railsに綿密に統合されているのが他のプリローダーと比較すると大きな特徴です。

Railsコミッターが開発していることからも、今後期待できるpreloaderです。

インストール

Gemfileにspringを追加します。

group :development, :test do
  gem 'spring'
end
$ bundle

これでgemが導入されます。

利用方法

springの簡単な使い方です。

$ bundle exec spring
Usage: spring COMMAND [ARGS]
The most common spring commands are:
 rake        Run a rake task
 console     Start the Rails console
 runner      Execute a command with the Rails runner
 generate    Trigger a Rails generator
 test        Execute a Test::Unit test
 rspec       Execute an RSpec spec

rakeは

$ bundle exec spring rake

rspecは

$ bundle exec spring rspec spec

などなど

一度起動すると、springが起動しているので次からはこれを利用するのではないだろうか

$ ps ax
  PID TTY           TIME CMD
20007 ttys001    0:01.13 spring server | app_name | started 2013-02-08 01:10:40 +0900
20009 ttys001    0:08.02 spring app    | app_name | started 2013-02-08 01:10:40 +0900 | test mode        

計測してみた

timeコマンドでそれぞれの時間を計測してみました。

rake spec zeus spring
7.958秒 2.102秒 2.076秒

プリローダーとして十分に機能していることは確かめられました。もう少し大規模な数のテストを実施すると、zeusとspringに違いが出てくるかも知れません。手元の環境でお試しあれ。

タイトルとURLをコピーしました