在Rails 4.2

时间:2016-01-12 12:22:23

标签: ruby-on-rails-4 to-json

我将Rails应用程序从Rails 3.2升级到Rails 4.2。我的观点中的to_json性能非常糟糕。在我的Rails 3.2应用程序中,我使用multi_json和Oj gem来获得出色的性能。使用Rails 4.2,我以这种方式设置oj gem:

gem 'oj', '~> 2.14', '>= 2.14.2'
gem 'oj_mimic_json', '~> 1.0', '>= 1.0.1'

然而,to_json性能似乎与Rails 3.2应用程序几乎一样好。一次to_json调用占用了大约50%的CPU时间。

Oj gem文档提到添加:

serialize :metadata, Oj

使其与ActiveRecord一起使用。这条线应该放在我使用的模型中吗?

enter image description here

1 个答案:

答案 0 :(得分:2)

我在这里找到了答案: https://github.com/ohler55/oj/issues/199

添加两个宝石后,还必须调用:

Oj.mimic_JSON()

.to_json使用Oj。