読者です 読者をやめる 読者になる 読者になる

Rails Webook

自社のECを開発している会社で働いています。Rails情報やサービスを成長させる方法を書いていきます

パフォーマンス

Railsでbulletを使ってN+1問題を発見しDBアクセスのパフォーマンスを向上させる

N+1問題や使われていないEager Loadingを発見するためのbulletというgemのインストール方法と使い方を説明します。パフォーマンスを落とす原因を発見できます。

N+1問題 / Eager Loading とは

N+1問題という、SQLクエリが 「データ量 N + 1回 (DBへのアクセス)」走ってしまい、取得するデータが多くなるにつれて(Nの回数が増えるにつれて)パフォーマンスを低下させてしまう問題です。