TOP>製品/サービス>カテゴリから探す>システム運用管理>JENNIFER>事例>アシスト技術者が見た Webシステムの運用/開発現場の実態

JENNIFER

アシスト技術者が見た Webシステムの運用/開発現場の実態

多くの企業が基幹システムなど業務遂行に必要不可欠なシステムをC/SからWebへと移行しています。Webシステムは、Webサーバ/アプリケーションサーバ/データベースサーバの3層構成が多く、問題が起きたときの切り分けが非常に煩雑です。そのため、なかなか問題を解決できず業務遂行に重大な影響を及ぼすことがあります。特にECサイトなどはアプリケーション遅延によって多大な機会損失を招く可能性もあります。本稿では、JENNIFERの技術担当者がお客様先で伺ったアプリケーション運用/開発における課題と解決策を5回に渡ってご紹介します。


アシスト技術者:塩澤 正寛
2005年、株式会社アシスト入社。
運用監視ツール担当歴4年、現在ではアプリケーション性能監視ツールJENNIFERのご紹介、サポート、技術支援を担当。週のほとんどはお客様先へ訪問し、課題解決から製品設計まで、幅広くこなしている。

週末は子どもを連れてキャンプに行くなど、子煩悩な一面を見せる。

ケーススタディ Vol.1

特定だけで丸一日、地道なログのチェックでやっと分かるレスポンス遅延の原因

■基本情報
業態:製造業
システム:社内システム(勤怠管理やスケジューラ等30種類のシステム)
利用ユーザ数:約6,000人
同時接続数:約250人

■ご担当者の悩み
2006年に業務アプリケーションをグループで統一/刷新してから度々レスポンス遅延が発生。Webサーバの台数を増やしたり、データベースのスペックを増強したりと手を打つもレスポンス遅延は解決せず、社員の業務に大きな影響を与えてしまい、困っているとのこと。ハードウェアの増強以外に一体何をすればいいのか分からないと頭を抱えていらっしゃいました。

問題点は、膨大なログを毎回1つ1つチェックしなければ原因が特定できないこと

ハードウェアの増強ではレスポンス遅延が解決せず、ハードウェアリソース以外の原因特定を開始するも、OSやアプリケーション、データベースごとに出力される膨大なログをチェックし、エラーログをみつけ、地道に原因を切り分けるのに非常に時間がかかるとのことでした。
また、レスポンス遅延の発生原因が毎回同じとは限らないため、問題が起きるたびに、全てのログを一からチェックしているそうです。そのため、原因の特定に何日もかかってしまい、レスポンス遅延の解消が遅くなってしまう、という悩みを抱えていました。
やはり、ログを1つ1つチェックしなければ遅延原因が分からないという根本的な問題を解決する必要があると思い、アプリケーション性能管理(APM)ツールのご紹介をさせていただきました。

<解決方法>たったの4ステップで遅延の原因は特定できる

アプリケーション遅延の原因を容易に特定するには、内部の情報を可視化するアプリケーション性能管理(APM)が有効です。APMツールJENNIFERを検証環境に導入し、Webシステムに関するログを1つの画面で確認していただいたところ、レスポンス遅延の原因となりそうなトランザクションとSQLをわずか4ステップ、2時間程度で特定することができました。

アシスト技術者が実際に行った、原因特定までの4ステップ

STEP1:トランザクションの滞留を発見

各アプリケーションサーバ内で現在処理中のトランザクションスピードをリアルタイムにモニタリングします。処理時間の長さに応じて、表示の色が紫→青→赤へと変化するため、ひと目で滞留しているトランザクションの有無が分かります。

STEP2:応答時間が100秒以上もかかっている疑わしいアプリケーションを発見

全てのトランザクションの応答時間を経過時間ごとにプロットしたグラフで、滞留しているトランザクションと、アプリケーションの詳細情報が確認できます。

STEP3:アプリケーション処理の詳細(内訳)から疑わしいSQLを発見

トランザクション名、クエリ情報(SQL、パラメータ情報)、応答時間の内訳を確認します。この画面で、あるSQLの応答時間が大幅に占めていることが判明しました。

STEP4:データベースサーバのCPU使用率の異常を発見

あわせて、アプリケーションサーバのリソース情報(メモリ/CPU使用率、ヒープメモリ使用量)を確認します。遅延が起きた際、アプリケーションサーバのリソースには問題ありませんでした。そこで、同じ時間帯のデータベースサーバのログを調査すると、CPU使用率が異常に高いことが分かりました。また、原因と思われるアプリケーションを単体で実行し、100%の事象再現を確認しました。

原因となるプログラムの問題特定までにかかった時間は、わずか2時間程度


データベースサーバのCPU使用率が高い原因は、該当のクエリがデータベースを全件検索していることであったため、データの整理とプログラムの改修を実施。また、JDBCセッションのConnection Close漏れのエラーも複数見つかり、あわせて改修していただきました。改修後、アプリケーションの応答時間は5秒未満に改善され、CPU使用率も低下しました。レスポンス遅延が発生してから原因の特定までにかかった時間はわずか2時間程度でした。

<効果>アプリケーションの性能を可視化することで、原因調査の工数を5分の1に短縮

JENNIFERの導入により、レスポンス遅延発生時の原因調査にかかる工数は5分の1にまで削減され、原因特定までの時間を劇的に短縮することができました。これをきっかけに、お客様内でのアプリケーションの品質に対する意識が高まり、検証環境に限らず、本番環境へのJENNIFER導入が決定しました。また、運用フェーズだけでなく開発フェーズの受入テストでもJENNIFERを活用することで、「リリース前に一定の品質基準を満たさないアプリケーションは、改善してからリリースする」という体制が整えられ、更なる品質向上を実現しています。


その他のケーススタディ



JENNIFERを詳しく知りたいお客様

JENNIFERの製品概要をご紹介しています。

JENNIFERの特長と、開発/運用フェーズでの活用方法をご紹介しています。

JENNIFERの導入支援サービスをご紹介しています。

JENNIFERエージェントの導入要件とサーバのシステム要件を記載しています。

JENNIFERの導入実績と導入事例をご紹介しています。


お求めの情報は見つかりましたでしょうか。

資料請求/お問い合わせはこちら(専門の担当者が確認し、ご対応します。)

お客様の状況に合わせて詳しい情報をお届けできます。お気軽にご相談ください。

ページの先頭へ戻る