Как избежать обновления списка драгоценных камней

Я вижу следующее утверждение при запуске приложения rails с помощью unicorn, что оно делает и как этого избежать:

I, [2013-03-28T06:46:05.060194 #1762]  INFO -- : worker=0 spawning...
I, [2013-03-28T06:46:05.066834 #2137]  INFO -- : worker=0 spawned pid=2137
I, [2013-03-28T06:46:05.067210 #2137]  INFO -- : Refreshing Gem list

person Rpj    schedule 28.03.2013    source источник


Ответы (1)


Журнал, который вы нам представляете, содержит:

рабочий=0 нерест

Рабочий процесс, который будет отвечать на ваши HTTP-запросы, создается как отдельный процесс с pid 2137.

Обновление списка драгоценных камней

Согласно официальной документации Unicorn (http://unicorn.bogomips.org/SIGNALS.html ), набор Gem перезагружается для того, чтобы обновленный код вашего приложения мог подобрать только что установленные RubyGems.

Глядя на исходный код, сообщение Refreshing Gem list вызывается всякий раз, когда приложение создается:

def build_app!
    if app.respond_to?(:arity) && app.arity == 0
      if defined?(Gem) && Gem.respond_to?(:refresh)
        logger.info "Refreshing Gem list"
        Gem.refresh
      end
      self.app = app.call
    end
  end
end

Настройка preload_app config обеспечивает некоторый контроль над этим поведением.

person Oct    schedule 16.10.2013