[webパフォーマンスチューニング事例]負荷試験はクリアしたものの、本番で障害が起きたケース このプロジェクトでは、リリース前に負荷試験をしていて、rps(requests per sconds)は2500を想定していました。試験時はその想定をクリアできたものの、本番では障害が起きてしまったという事例です。 このケースで、負荷試験の時点で「ボトルネックだ」と認識していたクエリがこちらです。 このクエリが問題なのはわかっていました。このORDER BYのとこに「isXXX」という値があります。上のSELECTのカラムに書いていますが、この「l.is_xxx」の値と、「h.id IS NOT NULL」を演算した値でORDER BYしています。これの何が問題かというと、indexを使えなくなってしまいます。 そのためテーブルをフルスキャンすることになりますが、100行しかスキャンする必要がない
![[fujiwara氏✖️そーだい氏]実例をもとにしたWebパフォーマンスチューニングの読み解き方 | Offers Magazine](https://cdn-ak-scissors.b.st-hatena.com/image/square/6e5d6f52ca7949e6678f2d2705cb077f412c143c/height=288;version=1;width=512/https%3A%2F%2Fs3-ap-northeast-1.amazonaws.com%2Fassets.offers.jp%2Fmedia%2Fwp-content%2Fuploads%2F2024%2F03%2F04170040%2Freport_WebPerformanceTuning.png)