IT部門のリソースを大量に投入してパフォーマンステストを実施したものの、本番業務で予想外のトラブルが──などということのないよう、3つのポイントを伝授する。
データベースを利用するアプリケーションのパフォーマンスをテストするのは大変な作業だ。最悪のシナリオは、IT部門のリソースを大量に投入してパフォーマンステストを実施したものの、どういうわけか本番業務で予想外のトラブルが相変わらず発生するというものだ。
以下に示す3つのポイントは、アプリケーションパフォーマンステストで最大限の成果を得るのに役立つだろう。
理想を言えば、これはシステム要件テストとユーザー受け入れテストの一部であるべきだ。そうでなければ目標が明確に定まらず、パフォーマンステストは際限のない作業になってしまい、ユーザーにしても自分たちの要望が考慮されていなければ、システムのパフォーマンスに不満が残るかもしれない。
特にWebベースのトランザクションシステムの場合、最も一般的な指標は、同時ユーザーセッション数と応答時間である。同時セッション数の増加の影響を調べるために、アプリケーションの負荷テストが行われることも多い。しかし、システム全体が1人のユーザー専用であっても、データベースに格納されているデータ量に応じてパフォーマンスに大きな違いが感じられることもある。空白のテーブルにデータを挿入するだけのトランザクションであれば瞬時に完了するだろうが、テーブルのレコード数が何万あるいは何百万にも増えてくれば、パフォーマンスの低下が生じる。このため、予想されるデータのサイズに関する指標をパフォーマンス要件に含める必要があり、テスト環境にもそのサイズ設定を含めなければならない。
最初のアーキテクチャのサイズを決定し、ハードウェアを購入する際には、ある程度の拡張性を考慮しておく必要はあるが、構築前のシステムを最適化する余地は限られている。最も多く利用されるのはシステムのどの機能なのかに関して、実際のユーザーからフィードバックを受けることにより、めったに使用しない機能を最適化するといった時間の浪費を避けることができる。また、パフォーマンスの最適化は信頼性や保守性などの面でトレードオフを伴う場合が多いため、適切な判断を下すためには基準となるパフォーマンス指標が必要だ。パフォーマンスのわずかな改善のためにアーキテクチャデザインを犠牲にすることがあってはならない。
以上のポイントを心に留めておけば、パフォーマンステストで大きな成果を期待でき、ストレスは小さくなるだろう。では、テストの成功を祈る!
台湾の旅行者の77.4%、米国の旅行者の53.6%は1年以内に日本を再訪したい――JTB総合研究所調査
訪日インバウンド旅行者の中にはリピーターとなる人も少なくありません。そこで、次回の...
電通グループがRobloxと組んで次世代コンテンツクリエイターを支援 その背景は?
電通グループがゲームプラットフォーム「Roblox」を活用した次世代クリエイター支援プロ...
「ECプラットフォーム」売れ筋TOP10(2024年9月)
今週は、ECプラットフォーム製品(ECサイト構築ツール)の国内売れ筋TOP10を紹介します。