Как запустить фоновые задания Rails с помощью Resque на AWS Elastic Beanstalk?

Я запускаю свое приложение rails на платформе AWS Elastic Beanstalk, на которой работает один экземпляр EC2 с Auto Масштабирование и эластичная балансировка нагрузки.

Мне интересно, как запустить resque, delayed_job или sidekicq или другое решение для фона вакансии на Elastic Beanstalk.

Какие возможны варианты фоновых заданий на Elastic Beanstalk?


person CuriousMind    schedule 26.01.2013    source источник
comment
проверьте это   -  person Viren    schedule 28.01.2013
comment
@Viren, это не имеет ничего общего с Elastic Beanstalk. Я пытался настроить это сам, но единственное, что я вижу, это конфигурация container_commands, которая, согласно документации, запускает все команды перед развертыванием приложения. Я дам вам знать, что я узнаю.   -  person WattsInABox    schedule 31.01.2013


Ответы (2)


Лучшим способом запуска/остановки/перезапуска фоновых заданий может быть использование сценариев инициализации для этих задач. Вы можете активировать эти сценарии инициализации как службы при запуске экземпляров. Подробнее о настройке контейнеров ElasticBeanstalk для служб здесь.

После этого вы можете заморозить свои сценарии инициализации, создав AMI своего экземпляра, а затем запустив экземпляры из этого пользовательского AMI с автоматическим масштабированием.

Надеюсь это поможет.

person rhetonik    schedule 05.02.2013

Я создал гем, Active Elastic Job, в качестве решения для фоновых заданий работающих приложений Rails. на эластичном бобовом стебле. Он использует Elastic Beanstalk рабочие среды, которые предназначены для фоновых задач приложений Elastic Beanstalk.

Преимущества:

  • Вы можете использовать одну и ту же кодовую базу для выполнения фоновых заданий, нет необходимости в отделении выделенной версии вашего приложения для работы в рабочих средах,
  • использовать возможности автоматического масштабирования Elastic Beanstalk,
  • нет необходимости настраивать внешние экземпляры или службы EC2 для запуска серверной части очереди, такой как resque или sidekiq,
  • нет необходимости настраивать контейнеры Elastic Beanstalk.
  • сохраните простоту предопределенной инфраструктуры Elastic Beanstalk.

Однако этот гем совместим только с приложениями Rails >= 4.2.

person Tawan    schedule 03.01.2016