Какие-нибудь фоновые процессы, которые работают с JRuby, развернуты в Windows? - PullRequest
3 голосов
/ 05 марта 2012

Кто-нибудь знает рабочее решение для фоновой работы для JRuby, развернутое на сервере Windows?(через warbler и tomcat)

Я ищу способ планирования фоновых заданий из моего приложения Rails 3.2, чтобы веб-приложение могло реагировать немедленно, а не зависать во время выполнения долго выполняющегося задания.

Я попробовал гем delayed_job, за исключением того, что он не работает с JRuby и Windows.(Если я ошибаюсь, пожалуйста, просветите меня) Resque зависит от Redis, который, очевидно, не поддерживает Windows.У меня нет опыта работы с Beanstalkd или Starling, но в документации для них нет упоминаний о Windows.

Я бы хотел сбросить окна, поверьте мне, но фоновая работа - это исполняемый файл Windows, который неприйти с источником.И мне нужно использовать JRuby, чтобы тоже можно было вызывать код Java.

Ответы [ 2 ]

4 голосов
/ 06 марта 2012

Решил проблему с помощью гема jruby-rack-worker, http://github.com/kares/jruby-rack-worker,, который позволяет использовать delayed_job для планирования заданий, просто предоставляет другой способ запуска рабочих процессов, более дружественный к JRuby / Warbler / Tomcat.

3 голосов
/ 05 марта 2012

Мы используем Rufus Scheduler для этой цели.Конфигурация планировщика находится в файле инициализатора следующим образом:

scheduler = Rufus::Scheduler.start_new  
scheduler.every('1d') do
  puts "I run once every day"
end

scheduler.every '3h' do
  puts "I run every 3 hours"
end
...