The need to execute tasks asynchronously, out of the HTTP request handling cycle, will sooner or later appear in all web applications. One gem that can help you handle this need is delayed_job. There are others too, like resque and Sidekiq. I have used many of them and I have to say that I really like delayed_job because it integrates so well with my RDBMS backend (usually, either MySQL or Postgre
![Delayed Job Best Practices — SitePoint](https://cdn-ak-scissors.b.st-hatena.com/image/square/7649284010e8c3cd73a345521cb7e69aa257cd3d/height=288;version=1;width=512/https%3A%2F%2Fwww.sitepoint.com%2Fwp-content%2Fthemes%2Fsitepoint%2Fassets%2Fimages%2Ficon.ruby.png)