我有一个非常小的Rails 3.1.1应用程序,以闪电般的方式存储内存。在应用程序中点击8-10次,我使用的RAM几乎达到1GB。
我们检查了日志中运行缓慢的MYSQL查询,没有任何内容。我们还检查了Apache日志,没有任何内容。
应用程序正在使用Passenger 3.0运行
这个问题可以绑定到一些使用的gem吗?此应用程序作为Rails 3.0.1应用程序启动,我们更新了rails版本。 gemfile中仍有[已弃用?]引用。这是gemfile:
gem "rails", "~> 3.1.1"
gem "mysql2", "~> 0.3.6"
gem 'omniauth', '0.2.6'
gem 'json'
group :assets do
gem "sass-rails", "~> 3.1.4"
gem "coffee-rails", "~> 3.1.1"
gem 'uglifier'
end
gem 'jquery-rails'
gem 'execjs'
gem 'therubyracer'
gem 'capistrano'
由于
答案 0 :(得分:2)
一切都是为了消除可能性。一些方向:
答案 1 :(得分:1)
因为therubyracer gem。
有乘客的热量记录器使内存泄漏。删除therubyracer gem或使用0.7.5版本
答案 2 :(得分:0)
而不是慢查询,检查低效查询 - 即从DB加载大量记录,创建大量对象,然后循环的类型在Ruby方面超过他们。
或者使用像New Relic这样的探查器。