【インタビュー】「AppDynamics」はスマホアプリの最適なUXを実現するAPMツール 新日鉄住金ソリューションズに訊く(前編)



サーバが正常に動いているのに、アプリのレスポンスが異様に遅い、しかしどこが問題なのかわからず、レビューで低スコアが多くついてしまった――そんな悩みを抱えたアプリディベロッパーは少なくないのではないか。

こうした問題に対応するため、グローバル企業ではアプリのパフォーマンスを管理するソリューション「APM(Application Performance Monitoring)」を活用することが多いのだが、日本での認知度と普及率は決して高いとはいえないのが現状だ。

今回、APMソリューションで定評のある「AppDynamics」について、新日鉄住金ソリューションズのITインフラソリューション事業本部営業本部マーケティング部の叶詠希氏(写真左)と田中俊行氏(写真右)にインタビューを行った。
 

AppDynamics

 
■新日鉄住金ソリューションズとは

新日鐵住金グループのシステムインテグレーターとして知られている。製造業から流通業、金融業、通信業、公共・公益事業など幅広い分野のシステムソリューションで豊富な実績を持つ。鉄鋼業系のシステム会社であるため、"お堅い"イメージが強いのだが、実は2000年台初頭にリリースされた有名オンラインゲームのバックエンドを構築するなど、ゲーム業界との関係も古くからあり、近年は、WEBサービスや、スマートフォンアプリ事業者向けの各種ソリューションサービスにも力を入れている。


 
■APMと「AppDynamics」とはなにか

――:本日はよろしくお願いいたします。最初にAPMとはどのようなものになるのでしょうか?

田中氏:今日のビジネス環境を考えると、ITは業務効率化のためのツールから事業の中核を担う存在になりました。またWebサイトのページ表示速度が集客や売上に直結する重要な競争要素になっています。このような状況のなかで、快適なサービスを継続的に提供し、顧客満足度を向上させるためのツールがAPMになります。

グローバルではAPMを導入している企業は多く、弊社が手がけるAPM「AppDynamics」については、イーベイやセールスフォース・ドットコム、エクスペディア、ナスダック、など、レスポンスタイムが違うだけで売上にインパクトのある会社を中心にグローバルでは2000社以上で採用されています。国内では、ぐるなび様、リクルート様、U-NEXT様などで導入されています。ゲーム業界では、エレクトロニック・アーツ様やアクティビジョン・ブリザード様で導入されています。


 


――:業界をリードするような大手企業でも導入されているんですね。AppDynamicsの特徴を教えてください。

田中氏:AppDynamicsは、USの会社の社名でもあり製品名でもあるのですが、アプリケーションパフォーマンスを管理する製品です。

大きな特徴として、一つ目は、実際にサービスを利用するユーザの実体感を数値化することができます。具体的には、ユーザがブラウザからwebサイトにアクセスする、検索する、結果が返ってくるなどの時間をすべて計測し可視化しています。

一般的なサーバ管理の場合、サーバのCPUが100%になってない、メモリの利用率やネットワークのトラフィックがMAX値に対してどのくらいかなどはよく見られていますが、実際のユーザのパフォーマンスはあまり見られていません。例えば、アプリケーション側に問題がある場合、ハードウェア上は動いているように見えても実際のユーザにはきちんとしたパフォーマンスが提供できていないケースもありえます。

日本企業でAPMを使っている会社はまだ少なく、多くの会社はインフラの監視程度にとどめている会社も少なくありません。そのため、何か問題があっても迅速な原因特定が難しくなっています。APMを使うことでユーザ視点でのサービスの管理が簡単になります。

二つ目は、システム間の連携を自動的にマッピングしてくれることです。従来は同様のことをしようとすると、「このアプリケーションのこの処理時間を計測しなさい」、「処理の時間が何秒を超えると遅いと判断しなさい」など一個ずつ手動で設定をする必要がありました。

アプリケーションが大規模で、新しい機能を導入する場合、変更に合わせて、監視対象に「これを加えなさい」と手動で追加設定する必要がありました。AppDynamicsを使うことで、システム間がどのように連携してどのように流れているかを自動的にマッピングしてくれます。

閾値も普段のトランザクションを監視して統計値をとり機械学習によってこれくらい遅くなったら危ないなど自動的に判断してくれます。また同様の製品を導入する際は、エラーが起きたときに本当のエラーか一時的なものか判断するのが難しくなるのですが、AppDynamicsは毎週金曜日の夜は負荷が重くなるなどの傾向から自己学習をするので使えば使うほど判断の精度があがります。

三つ目はソースコードレベルまで原因を追跡できることです。例えばこのレスポンスの時間が遅いとわかった時に何が原因かを特定することはすごく大変です。従来であれば、ユーザからここが遅いという指摘があれば、ネットワークやサーバやデータベースの管理者や多くの関係者が緊急対応を行い、自分の持っているデータをかき集めて分析して原因を仮定して対応することが多いでしょう。

AppDynamicsでは、レスポンスが遅い箇所が自動で表示されますし、専門知識を持つエンジニアではなくても原因を把握することが可能で、少人数で的確な修正を早急に行うことができます。ユーザ目線で処理が遅いなどを見ているので、ユーザにとっての優先順位から対応ができるのも大きなメリットになります。



――:AppDynamicsの導入によって作業が自動化することで、人の作業やリソースの使い方も大きく変わりそうですね。

田中氏:IT部門のリソースの浪費も抑止できます。統制がとれていないと何かある度に関係者全員が集まって深夜まで会議という会社はまだまだたくさんあると思います。AppDynamicsを導入することで、予防保守や障害発生の対応への人的コストは極力下げて、開発者のリソースを新しいサービスや機能の開発にあてることができます。


 
■導入事例の紹介…工数を50%削減した場合も

――:AppDynamicsのダッシュボードではどのような情報が見られるのでしょうか。

田中氏:下記は管理画面のデモ画面になります。サーバマップは自動的に作成されます。エラーと判断した場合、原因となるサーバや通信が赤色で表示されて目立つようになっています。またクラッシュの回数など、クラッシュした端末やOSのバージョン、通信環境や接続された地域など詳細なデータをAppDynamicsで見ることができます。

 
▲デモ画面のサーバマップ

 
▲Androidのバージョン毎のレポート画面

 
 
▲プロセス画面



例えばプロセスドリルダウン画面を見るとJDBCの処理の中で問題が起きていることがすぐにわかります。クリックしていくだけで、どのアプリケーションがどういうSQLを投げたときに問題が起きているかまで特定できますので、該当のアプリケーションを作っている人に確認や修正を依頼すれば問題が解決します。

 
▲プロセスドリルダウンの画面



――:とても便利ですね。AppDynamicsを導入されている企業では実際にどのような使い方をされているのでしょうか。

叶氏:例えば、あるお客様は、社内の目立つ場所に大きなモニターを設置してAppDynamicsのダッシュボードを常に表示させているそうです。これによって、エラーの発生やレスポンスが遅くなると、社内ですぐに気がつく環境になっていて、多くのユーザが気づく前に改善を行えるように利用されています。

 


――:他ではAppDynamicsについてどのような感想を持たれているのでしょうか?

田中氏:とても好評をいただいています。私がやり取りさせていただいていた担当者の方はサービスへの満足度を上げて、売上を上げることをミッションとしていました。当初の課題として、プロモーションによってユーザは集まっているけど、ユーザから挙動が遅いという不満の声があるという問題がありました。

ユーザからの意見を社内のシステム部門に持って行っても「きちんと動いている」と言われて、各部署で責任の押し付け合いになり、どこが問題かわからず会社としてなかなか改善が進まない状況でした。

AppDynamicsを導入することで、レスポンスが遅いなど状況が数値化され問題が明らかとなり、改善が進みました。AppDynamicsがない状況では「何か遅いんだけど」と曖昧な言葉でしか社内共有できませんでしたが、導入によってユーザの満足度も向上し、社内のコミュニケーションも円滑になったそうです。


叶氏:またそのお客様は、アプリの改変を頻繁に行われているので、都度システムマップを作り変えるのが大きな作業負荷となっていました。そのためAppDynamicsのシステムマップの自動マッピングの機能はとても好評でした。提供期間の長いサービスやシステムの改変や改修が継続的に行われるサービスにおいては、自動マッピング機能はとても便利だと思います。

パフォーマンスについても評価いただいています。AppDynamicsを採用したことでサーバエラー数が半減したそうです。他の会社ですと工数を50%削減できたと聞いていて、工数が削減できた点も大きな評価をいただいています。



――:AppDynamicsをはじめとしたAPMのニーズが増えてきた背景はどのようなことがあるのでしょうか。

田中氏:ユーザの環境などが複雑化したことが背景にあると思います。クライアント側でいうと、ユーザがパソコンから入ってくる場合でも、WindowsやMacなどのOSやブラウザなど多くの種類があります。モバイルもOSが複数あり、バージョンアップしている人やしていない人もいます。サーバ側でも他の会社とのポイント連携をしていたり他の会社のSaaSを一部使っていたり、いろいろなシステム連携によって複雑化しています。クライアント側もサーバ側も両方とも複雑化して、人の手ではなかなか管理できない状況になっていることも背景の一つだと思います。

また以前は全体の機能設計を済ませてから機能を実装するため半年から1年の長い期間を必要とするウォーターフォール型の開発が多かったのですが、現在は小単位での実装とテストを繰り返し徐々に開発を進めていくアジャイル型の開発が多くなっています。このような開発環境の変化もAPMのようなツールへのニーズが高まっている背景かもしれません。


――:サービスの特長をお聞きしましたが、ゲームの運用にも役立ちそうですね。次回は、その点について伺いたく思います。


 
■関連サイト
 

AppDynamics