Reading Time: 1 minutes

Webアプリケーションは、昨今では業務システムにもコンシューマー向けにも利用・提供されています。 特に業務システムとして利用されるWebアプリケーションは業務のパフォーマンスに影響を及ぼすため、常に使いやすく、動作がスムーズである必要があります。

アプリケーションに問題があると、業務システムの場合は業務に支障をきたしたり、コンシューマー向けアプリの場合はアプリの利用をやめてしまう可能性があります。エンドユーザーが満足し、Webアプリケーションが適切に機能するようにするには、WebアプリケーションとWebサーバーの動作を適切に管理し、問題がある場合はユーザーに影響が及ぶ前に知る必要があります。

当記事では、Webアプリケーションの動作やパフォーマンスに問題が発生した場合に真っ先に疑うべき箇所を6箇所ピックアップしました。疑う箇所についての情報と疑うべき理由について、以下で確認しましょう。

DNSおよびネットワーク接続の問題

1つのWebページは、ドメインネームシステム(DNS)に対して送るリクエストは、平均で50クエリだと言われています。同時に発生するインターネットへのアクセス数は数十億とも言われることを考えると、そのリクエストを処理するDNSは、ほとんどの組織において最も忙しいサーバーであると言えます。

Webアプリケーションへのアクセスで発生したエラーのうち最も多いのが、DNSエラーです。DNSの管理を適切に行わないと、IT運用部門はDNSの遅延やエラー、キャッシュポイズニングなどの問題を引き起こす可能性があります。

読み込みが遅いコンポーネントが存在する

最適化されていない画像、JavaScriptの問題、チャットウィジェットなどのアプリ内のサードパーティコード、および時間のかかるコードスニペットはすべて、Webアプリケーションの応答を遅くする可能性があります。

大手検索エンジンのGoogleは、表示が遅いページの検索順位を下げる検索アルゴリズムを採用していると言われています。Webページ・Webアプリケーションの速度はこれからもより重要視されるようになっていくと見られます。

データベースの問題

データを処理するアプリケーションの場合、データベースの管理を適切に行わないとデータが日に日に増大していきます。そのまま放置された場合には、データの検索時の処理に時間が掛かってアプリケーションのエラーに繋がるのはもちろん、削除すべきデータが放置されてセキュリティ的な問題に発展する可能性もあります。

データベースのパフォーマンスの問題の背後にある最も一般的な理由は、ロックと競合、欠落したインデックス、および非効率的なクエリです。また、SQLステートメントが遅いと、ページの読み込みが遅くなる可能性もあります。

以上の問題を防止するため、データベースとアプリケーションサーバーとの対話方法を定期的に監視する必要があります。

不完全なコード・コードの誤り

アプリケーションプログラムの不適切なコーディングは、アプリケーションのデッドロックや遅延を生み、結果としてアプリケーション全体のパフォーマンス低下につながる可能性があります。

また、古いバージョンのコードには効率の悪い貧弱なアーキテクチャが含まれていることがあります。レガシーシステムなどで古いアプリケーションからコードを再利用する場合は、そのコードが現状の環境で適切かどうかを確認する必要があります。

トラフィック過負荷

予期しないトラフィックの急増はサーバー速度の低下を引き起こします。また、負荷分散構成が不十分でない場合や非効率である場合も同様です。この場合、アプリケーションを使用するユーザー側ではWebアプリケーションの応答時間が遅く見えるか、504エラー(ゲートウェイタイムアウト)が発生しています。

Webアプリケーションの管理というとサーバーより上のレイヤーに目が行きがちですが、ネットワークやトラフィックについても適切に管理されるべきです。

共有リソースの障害

ネットワークですべてのリソースが接続されている昨今の環境においては、他のシステムと共有されているリソースが多く存在します。

共有リソースは相互依存しているため、1つのコンポーネントが影響を受けると、近隣の他のサーバーも影響を受けることがあります。Webアプリケーションのエラーは共有リソースを介して連動して発生する可能性があるため、サーバーとコンポーネントを入念に監視する必要があります。問題が発生したアプリケーションを特定したら、クラスタから隔離して、インフラストラクチャー内の他のコンポーネントに影響を与えないようにします。

これらの問題は、予想以上にアプリケーションに影響を与える可能性があります。運用管理担当者はアプリケーションのパフォーマンスに常に気を配り、些細な変化に気づいて対応する必要があります。

まとめ

当記事では、Webアプリケーションの動作が遅い場合にまず確認すべき箇所について、可能性の高そうな6箇所を挙げました。

管理するWebアプリに問題が発生した場合には是非参考にしてみてください。

なお、ManageEngineが提供するアプリケーションパフォーマンス管理ソフト『Applications Manager』はここでご紹介した監視項目をすべて簡単に可視化できるソフトウェアです。Applications Managerを活用すると、特定の作り込みをすることなく、簡単な設定だけでアプリケーション監視をはじめることができます。

アプリケーションのパフォーマンス調査でお困りの際には、ぜひApplications Managerをご検討ください!

Applications Manager

サーバー・データベースなどのWebシステムの一元管理を実現するアプリケーションパフォーマンス管理ソフトウェア。設定が簡単で、グラフやマップ表示で瞬時に状況を把握できます。

製品概要無料版ダウンロード

※永年無料版の利用をご希望の方は、30日間フル機能ご利用いただける「評価版」をダウンロードしてください。 30日が過ぎると自動的に5モニターまで監視可能の永年無料版となります。


フィードバックフォーム

当サイトで検証してほしいこと、記事にしてほしい題材などありましたら、以下のフィードバックフォームよりお気軽にお知らせください。