AIeosha (aleosha) wrote,
AIeosha
aleosha

Category:

О Ruby и Whenever

О том, что представляет собой Ruby, а точнее его философия gem’ов, на мой взгляд лучше всего говорит пример Whenever.
Есть простая задача – каждый час запускать на сервер какой-то таск.
Whenever – наиболее популярная библиотека для этой задачи.

Устанавливаем ее. Она выдает бинарник:
wheneverize .
Поскольку Ruby сам по себе ничего толком делать не умеет, у каждой библиотеки свой бинарник, а порой и не один.
Запускаем его. Получаем конфигурационный файл.
Прописываем настройки в очень удобном, читаемом формате.

every :sunday, :at => '12pm' do # Use any day of the week or :weekend, :weekday
  runner "Task.do_something_great"
end

И все. Ничего не происходит. Таск не бежит.
Но есть еще один бинарник!
whenever
Только он тоже просто красиво показывает что ты сам только что написал в конфигурационном файле.
Если ты действительно хочешь запустить таск (а разве я не за этим пришел?!), то нужно написать:
whenever –update-crontab
Дальше выясняется, что на выходе, бинарник читает свою собственную красивенькую конфигурацию, и… пишет cron task.
Подчеркну. Библиотека для запуска тасков установила два своих бинарника, наложила конфигураций, но сама таски запускать не способна.
Более того, если ты вдруг пишешь код на Windows – ты в пролете. Если на OSX – готовь бубен.
И так кажется во всем. Единственное, с чем Ruby справляется блестяще – это наложить кучу где ни попадя. Со всеми остальными задачами Ruby справляется крайне паршиво.

Tags: *.jar, ruby
Subscribe

  • Архитектура PlayStation 2

    Пожалуй самый подробный разбор на тему архитектуры PlayStation 2: https://www.copetti.org/writings/consoles/playstation-2/ ---

  • Hard Levels in FPS Games

    Пожалуй подпишусь под Wolfenstein 2, TimeSplitters 2 и Blood. Остальные уже или плохо помню, или не доставили проблем. Странно, что в подборке…

  • Tomb Raider (1996)

    Забавно, что я всегда считал, будто Tomb Raider выходил и на N64, а я его просто не видел. Оказывается, версию для N64 в свое время отменили.…

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 0 comments