Livesense Advent Calendar 2016 21日目の記事です。 何を実現したいか Webアプリケーションの開発では以下のような要件が求められることがあります。 CSVファイルをアップロードして、一括データインポートを行う リアルタイムに複雑な計算をして値を算出し、表示する このような処理時間が長くキャッシュも効かないような処理では、以下の問題が発生します。 レスポンスタイムが長くなりすぎて、Webサーバがタイムアウトしてしまう Unicornなどprefork型のWebサーバを利用している場合、ワーカーの一つを長時間専有してしまう レンダリングに時間がかかるので利用者が心配する or F5を連打される このような問題を解決するために、時間のかかる処理はキューに積んで、非同期で実行する方法がよくとられます。 Railsには4.2からActiveJobという機能が導入されて