Sha256: 1ae1a35e4115b7b741bc6dd0f505e3530094a3f9b2b0502a976adee2811c8288
Contents?: true
Size: 1.79 KB
Versions: 2
Compression:
Stored size: 1.79 KB
Contents
# coding: utf-8 require 'erb' namespace :resque do # Здесь мы добавляем некоторые необходимые для корректной работы "хуки". # # @see https://github.com/resque/resque/tree/1-x-stable#workers task :setup => :environment do # принудительно инициализируем приложение # (rails 3 не делают этого при запуске из rake-задачи) Rails.application.eager_load! if Rails::VERSION::MAJOR < 4 # Включаем логирование в resque ENV['VERBOSE'] = '1' # перенаправление вывода в файл Resque::Integration::LogsRotator.redirect_std # слушать HUP сигнал для ротации логов Resque::Integration::LogsRotator.register_hup_signal # Нужно закрыть все соединения в **родительском** процессе, # Нужно также закрыть соединение к memcache Resque.before_first_fork do ActiveRecord::Base.connection_handler.clear_all_connections! Rails.cache.reset if Rails.cache.respond_to?(:reset) end Resque.before_fork do Resque.redis.client.disconnect ActiveRecord::Base.connection_handler.clear_all_connections! end Resque.after_fork do |job| $0 = "resque-#{Resque::Version}: Processing #{job.queue}/#{job.payload['class']} since #{Time.now.to_s(:db)}" ActiveRecord::Base.establish_connection Resque.redis.client.connect end # Support for resque-multi-job-forks require 'resque-multi-job-forks' if ENV['JOBS_PER_FORK'] || ENV['MINUTES_PER_FORK'] if Resque.config.run_at_exit_hooks? && ENV['RUN_AT_EXIT_HOOKS'].nil? ENV['RUN_AT_EXIT_HOOKS'] = '1' end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
resque-integration-3.5.0 | lib/resque/integration/tasks/hooks.rake |
resque-integration-3.4.1 | lib/resque/integration/tasks/hooks.rake |