我怎么能运行在AWS弹性魔豆与Resque Rails的后台作业?(How can I run Ra

2019-07-18 18:14发布

我正在我的铁轨上应用AWS弹性魔豆的平台,这是运行与自动缩放及弹性负载平衡的单一EC2实例。

我不知道怎么办好resquedelayed_jobsidekicq或对弹性魔豆后台作业一些其他的解决方案。

什么是对弹性魔豆后台作业可能的选项?

Answer 1:

启动/停止/重新启动后台作业可以通过这些任务init脚本的最佳方式。 你可以有这些init脚本触发的服务时,实例启动。 更多关于自定义ElasticBeanstalk集装箱服务在这里 。

一旦这样做,你可以通过创建实例的AMI,然后启动实例了这个自定义AMI,支持自动缩放的冻结你的init脚本。

希望这可以帮助。



Answer 2:

我创建了一个宝石, 主动弹工作 ,作为对弹性魔豆运行Rails应用程序的后台作业的解决方案。 它利用弹性魔豆的工人环境等,旨在用于弹性青苗应用后台任务。

优点是:

  • 您可以使用相同的代码库,用于执行后台作业,无需岔开您的应用程序的专用版本,为在工作环境中运行,
  • 利用弹性魔豆自动缩放功能,
  • 无需设置外部EC2实例或服务的运行排队后端像resquesidekiq
  • 无需定制弹性魔豆容器。
  • 保持弹性青苗的预定义的基础设施的简单性。

然而,这种宝石只能使用Rails兼容> = 4.2的应用程序。



文章来源: How can I run Rails background jobs with Resque on AWS Elastic Beanstalk?