Part 7
性能の理論
Part 6 では、計測してから直しました。 ここで身につけるのは、その前に見当をつける頭の使い方です。
1 リクエストが CPU やディスクをどれだけ使うか、それがいくつあるか。 この 2 つの割り算で、どこが先に限界に来るかはおおよそ決まります。
式の出番は、時間のかかる変更を決める直前です。 台数を増やす前、キャッシュを組む前の 1 分の割り算が、外れに費やす 1 時間を省きます。
見当をつけてから測ると、外れたときに自分の考え違いも見つかります。
- コンピュータにおけるデータの操作とコスト感 メモリ参照からデータセンター間の往復まで、操作 1 回の時間を桁で覚え、何が速くなり何が変わらなかったかを知ります。
- 使用率 8 割から先が急に遅い リソースの使用率が上がると待ち時間が跳ね上がる仕組みを、待ち行列のシミュレーションで確かめます。
- 1 リクエストがリソースをどれだけ使うか サービス需要という 1 つの数字でボトルネックと容量を表し、あらゆる改善策を同じ物差しに載せます。
- 速くしても全体はそこまで速くならない アムダールの法則で改善の上限を見積もり、ボトルネックが順に移動していく理由を理解します。
- スコアが動かなくなったら 何を変えてもスコアが同じ帯に収束したときに、何が上限を決めているのかを 2 回のベンチで判別します。