2012-05-17 3 views
0

Я хочу сделать что-то простое с гем Руфус-планировщиком: https://github.com/jmettraux/rufus-schedulerРуфус планировщик не работает

, но я не могу заставить его работать.

У меня есть обычное рельсовое приложение. Я создал .RB файл:

# test_rufus_scheduler.rb 
require 'rubygems' 
require 'rufus/scheduler' 

scheduler = Rufus::Scheduler.start_new 

scheduler.in '1s' do 
    puts "hello world" 
end 

Тогда, когда я пытаюсь рубиновый test_rufus_scheduler.rb, ничего не происходит. Я делаю это правильно? gem показывает rufus-scheduler.

Спасибо.

ответ

2

Если ваш скрипт выходит сразу, пожалуйста, попробуйте добавить

scheduler.join

в конце. Обратите внимание, что при запуске скрипта отдельно и через рельсы это отличается. См. README для подробной информации.

1

Добавить ниже строки в apache2 конфигурации и перезагрузите apache2 сервер

RailsAppSpawnerIdleTime 0 
PassengerMinInstances 1 
1

Найдено решение этой here (который также находится в синхронизации с Ajet's ответ выше).

Для производственных серверов требуется дополнительная настройка. На большинстве производственных веб-серверов убиты простаивающие процессы Ruby. Чтобы Rufus работал, вам нужно остановить это. Для Passenger/Nginx вы можете скопировать следующий код ниже в свой конфигурационный файл nginx.conf для вашего сайта после строки, которая говорит ..

nginx.conf:

passenger_spawn_method direct; 
passenger_min_instances 1; 
passenger_pool_idle_time 0; 
+0

Я использую Amazon Linux AMI, как мой сервер для EC2. Я не вижу файл nginx.conf, когда я удалён от сервера. У меня есть файл /etc/init.d/passenger для пассажиров. Могу ли я изменить этот файл? Где я могу добавить информацию, указанную в вашем решении? – user2974739

 Смежные вопросы

  • Нет связанных вопросов^_^