yajl-rubyを使ってみた

      2017/01/27

railsで構築したAPIを少しでも早くできればと思い、yajl-rubyというgemを使ってみました

yajl-rubyについて

yajl-rubyはjbuilderを高速化することができるgemです

JSONをjbuilderで出力しているのであれば、やってみる価値はあるかと思います

Faster JSON backends

Jbuilder uses MultiJson, which by default will use the JSON gem. That gem is currently tangled with ActiveSupport’s all-Ruby #to_json implementation, which is slow (fixed in Rails >= 4.1). For faster Jbuilder rendering, you can specify something like the Yajl JSON generator instead. You’ll need to include the yajl-ruby gem in your Gemfile and then set the following configuration for MultiJson:

導入方法

導入はとても簡単です

まずはGemfileに以下の行を追加して bundle install します

次に config/initializers にmulti_json.rb 以下の内容で作成

最後に、ちゃんと反映されているか rails cinsole で確認してみましょう

このように、MultiJson::Adapters::Yajl と返ってこれば反映されています

rails/jbuilder
brianmario/yajl-ruby
how to use jbuilder with yajl

効果

実際に導入してみての効果ですが、若干早くなりました
そもそもrailsは早く開発できることがメリットなので、劇的なスピードアップは難しいとは思いますが、
yajl-rubyなどのgemを使ったりして少しずつ改善していきたいですね!

 - Rails , , , , , ,