詳解 システムパフォーマンスを読む⑦

前回の続き

 

syachineko.hatenablog.com

 

P.23あたりから

 

 適切性の水準

 パフォーマンスの要件は、会社や業務、システムによって異なるのが当たり前である

 適切な水準を見極めないと、過大に時間をかけてしまうか、あるいはまったく足りない的外れな分析となってしまう

 

基準時の推奨値

 パフォーマンスは日々変わるものなので、その時最良と思われた設定値は、あくまでその時にしか有効とならない

 また、ネットを検索してたまたまヒットしたパラメータをあてがうのは危険

 仮にパフォーマンス低下の原因がアプリのバグであり、それを解消したとしても、

 後には謎のパラメータ設定が残るだけになり、それが新たなパフォーマンス問題を引き起こす可能性があるからである

 逆に、どのようなパラメータがあり、推奨値はどうなっているか、過去からどう変えたかといった情報があれば、非常に有益である

 

負荷かアーキテクチャ

 あるパフォーマンス問題が生じているとき、それがワークロード(負荷)によるものである場合と、アーキテクチャによるものである場合がある

 例として、複数CPUを持っているにもかかわらずシングルスレッドで1つのCPUにのみ負荷がかかっている状況はアーキテクチャの問題であり(マルチスレッド化を検討)、マルチスレッドで全CPUがビジー状態となっている場合は、ワークロードによる問題である(CPU増設を検討)

 

スケーラビリティ

 負荷の増加に伴うシステムのパフォーマンスの変化を言う

 例えばスループットは、あるところまでは負荷とスループットが線形の関係となるが、あるところから急にスループットが落ち始める

 また、ある一定数までをさばけるシステムでは、基本的に負荷によらず応答時間は変わらないが、過大な負荷をかけるとゆっくりと、または急激に応答時間が遅くなるということがある

 

以上