概要 Railsを開発する上でパフォーマンスを低下させないためのTipsをメモ Tips 実行時間の大きい処理はJobで非同期実行する リクエスト内で複数な処理を実行してしまうと、レスポンスが遅くなりユーザビリティの低下につながります リクエスト内で実行する必要がないものは、ActiveJob等で非同期に実効するか、バッチ処理で定期的に処理するように することでユーザビリティの向上が図れます 条件式判定よりもSQLで絞る 取得してきたデータを1件ずつ条件反映して処理をするよりは、 取得するデータそのものをSQLで絞る方がはるかにパフォーマンスが良くなります ループの中で毎回条件式で反映してしまうと、ループの中で毎回SQLが走ってしまうこともあるので、 パフォーマンスが要求される場合はSQLで絞るか、SQLで絞れる設計にすることをおすすめします Array よりも ActiveRecord: