仕組みから学ぶ Web
応用読了目安 25#性能#N+1#インデックス#キャッシュ

検証環境では速い一覧が、本番でだけ 9 秒かかる

同じコード、同じクエリ、同じインデックス。それでも本番だけ遅い。5つの判断点で、あなたは何を選びますか。

このケースで問われること

このケースは、測る前に直さないことを扱います。

遅いと言われたとき、心当たりのある場所から直したくなります。「N+1 だろう」「インデックスが無いのだろう」。多くの場合それは当たりますが、当たったことと、それが今回の原因であることは別です。

このケースには遅い理由が複数あります。そのうち1つを直しても、数字はほとんど動きません。どれが支配的かを先に測れるかが最初の分岐です。

順に 5 つの判断点があります。それぞれで一度自分の答えを決めてから、先へ進んでください。結論を先に読むと、判断の練習になりません。

扱う範囲は data/n-plus-onedata/indexdata/execution-plannetwork/caching にまたがります。個々の仕組みを知っていることと、混ざった状況で原因の順位をつけられることは別だ、というのがこのケースの主題です。

読み終わりましたか?

読了にすると、これを前提とする記事がロードマップで開放されます。

このケースが扱う仕組み