API計測・監視
API通信のレスポンス時間とデータの計測・監視
モバイルアプリのパフォーマンスは、API通信のレスポンス時間に左右されます。
サーバ間の通信処理はAPIで行われており、これもAPI通信のレスポンス時間に左右されます。
Webブラウザとサーバの間もAPI通信が使われており、API通信のレスポンス時間が大きく影響を及ぼします。
APIとは
APIとは、広義ではソフトウェアコンポーネント同士が互いに情報をやりとりするのに使用するインタフェースの仕様です。
WebサイトやWebサービス内では、Web APIと呼ばれるHTTPリクエストにリソース要求を含めたリクエストが使われます。
その方式は、以下の3つがあります。
- HTTP GETリクエストのURLパス名にリクエストするリソースを記載する
- HTTP GETリクエストのQuery Stringにリクエストするリソースを記載する
- HTTP POSTリクエストのbody部にリクエストするリソースを記載する
このリクエストに対して、データがHTTPレスポンスとして返ってきて、WebページやWebアプリケーションの動的な表示であったり、データ送信に使います。
レスポンスデータには、以下のようなフォーマットが使われます。
- JSON
- XML
- CSV
API計測・監視とは
API計測・監視は、APIのレスポンス時間の計測・監視を行います。
Web APIは、バックエンドでのサーバ間通信で使われることもありますし、インターネットを介してフロントエンドとバックエンドの通信で使われることもあります。
どちらの場合でも、疎結合である事に変わりはありません。
疎結合の場合、システム構成やスケーリングの自由度が得られ、障害時の範囲を狭める事ができる代わりに、パフォーマンスが犠牲になります。
マイクロサービスアーキテクチャと呼ばれるWeb APIによるマイクロサービス間を疎結合によって連携させたシステムの場合、必然的にパフォーマンスの問題を抱える事になります。
API計測は、疎結合に必ずついて回るパフォーマンス問題を監視して、性能の低下を検出するために行います。
API計測のデータを使うことで、パフォーマンスチューニングに必要な知見を得ることができます。
API監視によって、遅延を検出して、安定配信のための手を即座に打つ事が可能になります。
モバイルアプリのパフォーマンスを左右するAPIのレスポンスタイム
スマートフォンアプリケーションの画面表示は、一見、iPhoneやAndroidの画面表示の処理の問題に見えます。
実際は、サーバと通信してデータを取得するAPIのレスポンスの遅延に起因しています。
API計測を行い、どのAPI処理が遅延していて、その原因は何かを突き止めることで、スマートフォンアプリケーションのパフォーマンスを向上させることが可能です。
実装
Webページ向けAPI
WebページでAPIを使うパターンとしては、以下のようなものがあります。
- レコメンドエンジンを使ってデータを取得する
- 証券や為替などのデータを取得する
- ニュースデータを取得する
- 銀行やクレジットカードの取引履歴を取得する
- 航空券やホテルの空き情報を取得する
そのようなデータ取得が遅延すると、当然ながら、Webページの表示速度が遅延します。
APIで顧客に対してデータを提供しているような企業にとっては、APIのレスポンスタイムの監視は、サービス品質の維持・向上に欠かせません。
計測の実装に際しては、そのAPIの処理プロセスだけを抜き出して、使われているRESTなどを発呼して計測します。
スマートフォンアプリケーション向けAPI
スマートフォンアプリケーションで発呼しているHTTPのGETリクエストやPOSTリクエストを使って計測します。
WebSocketを利用している場合には、WebSocket計測でレスポンスを計測します。
一般的には、典型的な画面遷移に基づいて、APIを複数、シーケンシャルに発呼して計測していきます。
バックエンド向けAPI
サーバ間・システム間連携でAPIをバックエンドで利用している場合には、データセンター内での通信となるため、外部から計測できない場合が多いです。
その場合には、Enterprise Nodeという、ベアメタル・仮想、どちらでも設置可能なノードを使って計測します。
AWSやMicrosoft Azure、Oracle Cloudなどのクラウド上に展開したサービスであれば、内部に仮想マシンを立ち上げて頂き、そこに計測システムをインストールして、Enterprise Nodeとして稼働させて計測します。
データ
散布図

累積分布関数

個票の詳細データ
各計測には、詳細な個票の詳細データが含まれています。
それぞれに、ヘッダ情報、ボディ情報が含まれています。

アラート/レポート機能
アラート機能
- エラー検知
- エラーを検知した場合には、即座に、指定のメールアドレスにアラートメールを送信することが可能です。
- 遅延検知
- レスポンス時間、その時間を構成するDNS、TCP/IP 3 way handshakes、SSL、Wait、Loadなどの各指標に閾値を設定し、その値を超えた観測値を計測した場合には、即座に指定のアドレスにアラートメールを送信することが可能です。
レポート機能
日次で、APIのパフォーマンスについて、グラフ化したレポートを指定のメールアドレスに送信することが可能です。
パッケージ販売
国内企業で最も使われるTrace Route計測・監視のパターンでパッケージ化しました。
パッケージプラン | 国内モバイル回線計測・監視 | 国内光回線計測・監視 | 国内光回線+ケーブルTV回線計測・監視 |
---|---|---|---|
計測都市 |
| ||
計測回線 |
|
|
|
計測頻度 | 15分 | ||
月額価格 | 110,000円(税抜価格) | 56,900円(税抜価格) | 82,850円(税抜価格) |
年間価格 2か月分お得です | 1,100,000円(税抜価格) | 569,000円(税抜価格) | 828,500円(税抜価格) |