Spring-load your Rails development environment to speed it up
2 min read railsThere is a wide selection of tools that allow you to pre-load your Rails development environment to make it faster. We have Zeus, Spork or Spin.
All of them are great and help you work with your development environment faster, but there is a new contestant—Spring by Jon Leighton.
What sets it apart from others is fantastic integration with Rails—in fact, it will be a default with all new Rails 4.1 applications.
So what does it give us?
It pre-loads your development environment in the background without all the hassle of starting up servers etc.
All you need to do is simply add it to your project, install the gem and off you go:
In your Gemfile
:
group :development do
gem 'spring'
gem 'spring-commands-rspec'
end
The second gem also adds support for rspec
binstub, so running your tests will use the preloaded environment.
We need to install the gem locally, so we don’t need to load it via bundle exec
(which is slow!).
gem install spring
gem pristine --all
spring binstub --all
Let’s compare time differences for rake routes
:
Without Spring:
$ time rake routes
4.32 real 0.10 user 0.06 sys
Now with Spring:
$ time bin/rake routes
0.89 real 0.12 user 0.07 sys
Notice that we are using the generated binstub. You can achieve the same result by using spring rake routes
.
There are other commands and configuration options that allow you to fine-tune your environment. It’s all available in the README.
Enjoy your faster running development environment.
Last modified: 14-Nov-24