玄録

玄録は、秀玄舎の事例を通した、
実践研究の成果をご報告する不定更新の
ビジネスレポートです。

性能問題の原因と対策

性能問題の原因と対策(アーキテクチャ)

2008.05.09

  • Facebook
  • mixi
  • hatena

「性能問題の調査方法  その1(システム全体の性能測定)」の調査結果で「CPU使用率」、「メモリ使用率」、「ディスクI/O」、「ネットワーク負荷」が高くないのに、レスポンスが悪い場合があります。
この場合は、アプリケーション構成、ハードウエア構成などアーキテクチャ問題に起因する場合が多く見受けられます。アーキテクチャの問題は、基本設計の問題でありため、システム全体(ハードウエア、アプリケーション、データベースなど全体)の作り直しが発生する場合がほとんどです。

抜本的な対策は打てませんが、暫定的にアプリケーションのマイナーチェンジ、データベースのロック範囲の改善、サーバ構成(例えば3階層(Web-AP-DB)構成を2階層(Web-AP/DB)に変更)の変更により改善できる場合もあるので、より高度の原因究明(仮説・検証)が必要となります。

①仮説
広範囲の中から原因究明をするためには、まずあたりをつけるためにレスポンスが悪い原因をいくつか仮説化します。

②詳細測定
仮説に基づき、問題となるサーバのアプリケーションの毎のレスポンス、メモリ使用状況(メモリ使用率、スワップ状況、メモリ増加率)ディスク使用状況(ファイル単位/ディスク単位のディスクI/O、ディスクウエイト)、ネットワーク状況(ネットワーク使用率)を測定します。段階的に測定を実施し、問題箇所を絞り込んで行きます。

③解決策立案
問題箇所の詳細測定から、アプリケーション、データベースなどの問題と解決案を検討します。

④検証
アーキテクチャに絡む問題のため、十分な検証が必要となります。解決策に基づき効果がどの程度出るか、論理的に検証し、その後テスト機でも検証します。

次回は、「性能問題の原因と対策(データベース)」についてお話します。 (2008/05/23)