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

JENNIFER

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

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


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

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

ケーススタディ Vol.2

縦割りの管理体制と、人依存の調査が足かせになり、性能劣化が長期化

■基本情報
業態:金融(保険)
システム:社内システム(経費精算システム)
利用ユーザ数:約4,000人
同時接続数:約200人

■ご担当者の悩み
経費精算システムでは、検索処理のレスポンス悪化やバッチ処理の遅延が頻発し、突如サービスダウンすることがある。また、性能劣化を事前に把握できずに、ユーザからのクレームで初めて問題が発覚することも。原因を調査するにも、アプリケーションやデータベースそれぞれで管理部署が違うため多くの工数がかかったり、結局原因が特定できずに再現待ちをするケースも多々あるとのこと。性能劣化の課題が長期化したため、その場しのぎの対応ではなく、根本課題を解決するため、適切な解決方法を模索されていました。

問題点は、情報共有の煩雑さと担当者のスキルレベルに依存した調査

アプリケーション/データベース/インフラごとに管理担当者が異なるため、多くのやりとりや調整が必要で情報共有が円滑に進まなかったそうです。また、スキルレベルによって調査時間や精度にも大きな差が発生していたとのこと。さらに、調査しても原因が特定できず、とりあえず再起動で復旧させることもあったため、運用部門はシステムの安定稼働/品質向上のために、情報収集をされていました。そこで、アシストのセミナーに参加したご担当者様が、よく似た現象に悩むユーザ事例を聴講され、アプリケーション性能管理(APM)ツールの導入を検討していただくことになりました。

<解決方法>アプリケーション内部情報の可視化と使いやすいコンソール

性能劣化の原因を容易に特定するには、アプリケーション性能管理(APM)ツールでアプリケーション内部の情報を可視化し、モニタリングすることが有効です。そこで、APMツールJENNIFERを検証環境に導入し、トランザクションやSQL/エラー情報など、アプリケーション内部の情報をモニタリングしていただきました。1つのコンソール画面上で可視化された情報を、担当者間で共有することで、問題発生時のやりとりがスムーズに進み、調査工数を大幅に削減しました。また、ログの分析、可視化がAPMツールで自動化されたことで、担当者の経験やスキルレベルに依存せず、業務の属人化防止につながりました。

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

STEP1:ヒープメモリの不足で発生するOut of Memoryをアラート検知

リソースやアプリケーション処理に関する約30項目に対してアラートを設定します。今回はJavaのヒープサイズに対してアラートを設定したところ、ヒープメモリの不足で発生する「Out of Memory」エラーを発見しました。またOut of Memory前後でFull GC(Garbage Collection)が頻繁に発生していることを確認しました。

STEP2:モニタリングデータから実行回数の多いアプリケーションを発見

エラー発生日時のアプリケーション統計情報を確認します。レスポンスが悪化した時間帯のアプリケーション毎のヒット数や応答時間を見ると、他の日付や時間帯と比較して、特定のアプリケーションの実行回数が多いことが分かりました。

STEP3:エラー情報から例外処理(Exception)が多数発生していることを確認

また、同時間帯のエラー情報を確認すると、例外処理(Exception)が多数発生しているアプリケーションが見つかりました。そのアプリケーションはSTEP2で、実行回数が多かったアプリケーションと一致しました。

STEP4:メモリリークの原因となるアプリケーションの改修を依頼

実行頻度とException情報を元に開発元へアプリケーションの調査を依頼したところ、メモリを解放しないというソースの不具合でメモリリークが発生し、性能劣化していたことが分かりました。不具合のある箇所を絞り込めていたので、修正/リリースはすぐに行われました。

使いやすいWebコンソールで情報を共有し、調査工数を大幅に削減

結果、障害発生から原因特定にかかった時間は約半日程度でした。その後も、1つのコンソール画面上で可視化された情報を担当者間で共有することにより、運用/開発担当者それぞれで発生していたやり取りや調整が円滑になりました。また担当者のスキルに依存していたログ分析は自動化され、調査工数を大幅に削減できました。さらに、分析したデータから、本来のアプリケーション処理能力を超えたトランザクションが発生していることが判明したため、今後の適切なサイジング計画にも活用していただくことになりました。

<効果>開発から運用までJENNIFERを活用し、品質向上と安定運用を実現

今回の事例は、社内でWebシステム開発に関連するプロジェクトのモデルケースになり、新規開発やレスポンスに不安のあるシステムにはJENNIFERを導入する体制が整えられました。特に、今回のような受入テストで見逃されやすいアプリケーション内部のエラーは、リリース前に必ず把握し修正することが重要との認識を強められ、開発/運用間の情報共有や連携手段に、JENNIFERを活用していただいています。お客様からも「システムの性能を見える化することで担当者間のムダなコミュニケーションが減り、”なんとなく”ではなく客観的かつ具体的な会話ができるようになった。操作性も良く、すぐに見える化できる点でとてもよい製品だと思う。」とのお言葉をいただきました。


その他のケーススタディ

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

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

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

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

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

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



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

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

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

ページの先頭へ戻る