Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 在Rails 3中缓慢加载应用程序_Ruby On Rails_Ruby On Rails 3_Environment_Performance - Fatal编程技术网

Ruby on rails 在Rails 3中缓慢加载应用程序

Ruby on rails 在Rails 3中缓慢加载应用程序,ruby-on-rails,ruby-on-rails-3,environment,performance,Ruby On Rails,Ruby On Rails 3,Environment,Performance,我有一个基于Rails 3(版本Rails 3.1.2)和ruby 1.9.2p290(2011-07-09修订版32553)[x86_64-darwin10.8.0]。应用程序的加载速度太慢了,现在,当我尝试它时,我等待了23秒,比加载索引页的时间还长。它与Heroku和localhost上的相同 我在这里发现了类似的话题,但不幸的是,我没有找到解决我问题的方法。我在一个博客的某个地方读到,这个问题可能是由这个页面引起的,因为这个页面很久没有人访问过了 但是再一次-我找不到解决这个问题的方法。

我有一个基于Rails 3(版本
Rails 3.1.2
)和
ruby 1.9.2p290(2011-07-09修订版32553)[x86_64-darwin10.8.0]
。应用程序的加载速度太慢了,现在,当我尝试它时,我等待了23秒,比加载索引页的时间还长。它与Heroku和localhost上的相同

我在这里发现了类似的话题,但不幸的是,我没有找到解决我问题的方法。我在一个博客的某个地方读到,这个问题可能是由这个页面引起的,因为这个页面很久没有人访问过了

但是再一次-我找不到解决这个问题的方法。。。所以我想问你,如果有人在过去已经有这个问题,并有一个解决办法,我将非常感谢这一点

非常感谢

编辑-文件:

source 'http://rubygems.org'

gem 'rails', '3.1.2'

# Bundle edge Rails instead:
# gem 'rails',     :git => 'git://github.com/rails/rails.git'

gem 'mysql2'
gem "rvm", "~> 1.9.2"
gem 'authlogic'
gem "rake", "0.8.7"
gem 'json'
gem "declarative_authorization", "~> 0.5.3"
gem "ancestry", "~> 1.2.4"
gem "taps", "~> 0.3.23"
gem "paperclip", "~> 2.4.5"
gem 'aws-s3'
gem "awesome_print", "~> 1.0.1"
gem 'actionmailer'
gem 'wkhtmltopdf-binary'
gem 'rails3-jquery-autocomplete'

# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails',   '~> 3.1.5.rc.2'
  gem 'coffee-rails', '~> 3.1.1'
  gem 'uglifier', '>= 1.0.3'
end

group :production do
  gem 'therubyracer-heroku', '0.8.1.pre3'
  gem 'pg'
end



gem 'jquery-rails'

# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'

# Use unicorn as the web server
# gem 'unicorn'

# Deploy with Capistrano
# gem 'capistrano'

# To use debugger
# gem 'ruby-debug'
EDIT2-使用过的gems版本:

Using rake (0.8.7) 
Using multi_json (1.0.4) 
Using activesupport (3.1.2) 
Using builder (3.0.0) 
Using i18n (0.6.0) 
Using activemodel (3.1.2) 
Using erubis (2.7.0) 
Using rack (1.3.6) 
Using rack-cache (1.1) 
Using rack-mount (0.8.3) 
Using rack-test (0.6.1) 
Using hike (1.2.1) 
Using tilt (1.3.3) 
Using sprockets (2.1.2) 
Using actionpack (3.1.2) 
Using mime-types (1.17.2) 
Using polyglot (0.3.3) 
Using treetop (1.4.10) 
Using mail (2.3.0) 
Using actionmailer (3.1.2) 
Using arel (2.2.1) 
Using tzinfo (0.3.31) 
Using activerecord (3.1.2) 
Using activeresource (3.1.2) 
Using ancestry (1.2.4) 
Using authlogic (3.1.0) 
Using awesome_print (1.0.2) 
Using xml-simple (1.1.1) 
Using aws-s3 (0.6.2) 
Using bundler (1.0.21) 
Using cocaine (0.2.1) 
Using coffee-script-source (1.2.0) 
Installing execjs (1.3.0) 
Using coffee-script (2.2.0) 
Using rack-ssl (1.3.2) 
Using json (1.6.5) 
Using rdoc (3.12) 
Using thor (0.14.6) 
Using railties (3.1.2) 
Using coffee-rails (3.1.1) 
Installing declarative_authorization (0.5.5) 
Using jquery-rails (1.0.19) 
Using mysql2 (0.3.11) 
Using paperclip (2.4.5) 
Using rails (3.1.2) 
Using rails3-jquery-autocomplete (1.0.5) 
Using rest-client (1.6.7) 
Using rvm (1.9.2) 
Using sass (3.1.12) 
Using sass-rails (3.1.5) 
Using sequel (3.20.0) 
Using sinatra (1.0) 
Using sqlite3 (1.3.5) 
Using sqlite3-ruby (1.3.3) 
Using taps (0.3.23) 
Using uglifier (1.2.2) 
Using wkhtmltopdf-binary (0.9.5.3) 

我想这是因为你可能正在运行旧版本的gems。请将所有gems更新为其最新版本,然后重试。当我遇到类似的问题时,这对我很有帮助。

所以我发现,问题出在Heroku的dynos上。如果您将Heroku用作免费,则已指定1个动态。如果在一段时间内(例如1小时)没有人访问你的页面,那么这个dyno是空闲的->这就是加载页面时间过长的原因


如果您购买第二代dyno(每月35美元),那么dyno将永远不会闲置,我们也永远不会遇到“缓慢加载”的情况

就像某种黑色天堂一样,你是在开发模式还是在生产模式下测试应用程序?正如我上面所说的,我在localhost上的开发模式下进行了测试。而且在Heroku上的生产模式下-两种情况下的结果都是一样的。@当然,请看更新后的帖子。第一步是正确调试。这只是第一个请求(还是每次)?这是服务器时间还是浏览器时间?看看日志<代码>在XXXXms内完成200 OK(视图:YYYYms | ActiveRecord:ZZZZms),X、Y和Z是什么。请查看更新后的原始帖子。我运行了
bundle-upadte
,这些是我的gems的版本。