Rails 4.2 application is developing very slowly

I’ve been banging my head on the wall for several days now. My application is very slow in development mode. Good time is spent on servicing assets (especially images). Each request is very slow, it takes up to 7 seconds to load a simple 50kb jpeg. The total page load time can be up to two minutes ...

I suspect there is a link to automatically download the code, because when I turn on the classes, caching loads much faster (maximum several hundred ms). This is not a solution, because since I need to code, I cannot restart the server every time I make changes.

Here is my config / development.rb

Rails.application.configure do
  # Settings specified here will take precedence over those in config/application.rb.

  # In the development environment your application code is reloaded on
  # every request. This slows down response time but is perfect for development
  # since you don't have to restart the web server when you make code changes.
  config.cache_classes = false

  # Do not eager load code on boot.
  config.eager_load = false

  # Show full error reports and disable caching.
  config.consider_all_requests_local       = true
  config.action_controller.perform_caching = false
  config.reload_classes_only_on_change = true

  # Don't care if the mailer can't send.
  config.action_mailer.raise_delivery_errors = false

  # Print deprecation notices to the Rails logger.
  config.active_support.deprecation = :log

  # Raise an error on page load if there are pending migrations.
  config.active_record.migration_error = :page_load

  # Debug mode disables concatenation and preprocessing of assets.
  # This option may cause significant delays in view rendering with a large
  # number of complex assets.
  config.assets.debug = false

  # Asset digests allow you to set far-future HTTP expiration dates on all assets,
  # yet still be able to expire them through the digest params.
  config.assets.digest = true

  # Adds additional error checking when serving assets at runtime.
  # Checks for improperly declared sprockets dependencies.
  # Raises helpful error messages.
  config.assets.raise_runtime_errors = true

  # Raises error for missing translations
  # config.action_view.raise_on_missing_translations = true

  config.action_mailer.default_url_options = { host: '127.0.0.1', port: 3000 }
  # email sending process
  config.action_mailer.perform_deliveries = true
  config.action_mailer.delivery_method = :test
  # Defaults to:
  # config.action_mailer.sendmail_settings = {
  #   location: '/usr/sbin/sendmail',
  #   arguments: '-i -t'
  # }
  config.action_mailer.perform_deliveries = true
  config.action_mailer.raise_delivery_errors = true
  config.action_mailer.default_options = {from: 'no-reply@example.com'}
  config.web_console.whitelisted_ips = '0.0.0.0/0.0.0.0'


end

and initializers /assets.rb

# Be sure to restart your server when you modify this file.

# Version of your assets, change this if you want to expire all your assets.
Rails.application.config.assets.version = '1.0'
# Rails.application.config.assets.precompile += %w( jquery.Jcrop.min.scss )
# Rails.application.config.assets.precompile += %w( jquery.Jcrop.min.js )
# Rails.application.config.assets.precompile += %w( flat-ui.css.bak )
# Rails.application.config.assets.precompile += %w( bootsrap.css.map)
# Add additional assets to the asset load path
# Rails.application.config.assets.paths << Emoji.images_path

# Precompile additional assets.
# application.js, application.scss, and all non-JS/CSS in app/assets folder are already added.
# Rails.application.config.assets.precompile += %w( search.js )

Dir.glob("#{Rails.root}/app/assets/images/**/").each do |path|
  Rails.application.config.assets.paths << path
end

Any insight would be greatly appreciated!

+4

Source: https://habr.com/ru/post/1666641/


All Articles