Here’s a small primer to setup some workers with Rails on AWS Elastic Beanstalk This assumes you’ve already setup a rails app on AWS. Here’s a good resource to get started if you haven’t
You’ll need 3 files in your
.ebextensions. One to create the Upstart service, one to reload service configuration and one for hooks that start/stop the worker on beanstalk deploy hooks. Ofcourse these configurations can be added to a single file but I prefer to keep them separated for manageability.
See complete gist after the Sneakers description.
If your app used sneakers to listen on RabbitMQ exchanges, you can also start sneakers workers in the background just like sidekiq. The configuration is a bit different though because sneakers doesn’t provide a pid file using which we stop or start the process. Even if we kill the sneakers service there are orphan processes still running which were started by the sneakers rake task. I chose to kill those processes on redeploy. See complete gist: