Webパフォーマンス入門: APIの監視
全てを繋ぐAPIを正常に保つために
2017年8月16日
著者: Kameerath Kareem
翻訳: 小川 純平
この記事は米Catchpoint Systems社のブログ記事Web Performance 101: Monitoring APIsの翻訳です。
Spelldataは、Catchpointの日本代理店です。
この記事は、Catchpointの許可を得て、翻訳しています。
今日のデジタルワールドにおいて、APIが重要であることは既に説明しました。
(こちらの記事を参照)
このように、APIは私達が繋がり続けるために重要な役割を果たしているため、APIの可用性だけではなく、パフォーマンスについてもメンテナンスしていかなければなりません。
APIの監視をする際、APIとアプリケーションの統合からパフォーマンスの問題まで、考慮すべき観点がいくつかあるため、一般的な、稼働時間しか報告してくれないような監視の方法は望ましくありません。
うまく行かない可能性があるポイント
APIによって複雑な機能結合も可能となり、全く別のアプリケーションが一緒に動作して、よりインタラクティブで繋がったデジタル環境を作ることができるようになります。
サービス間でのデータのやりとりを可能にしてくれますが、そういった接続・統合方法は、ネットワーク上において、脆弱なポイントをいくつか作ってしまう場合があります。
APIを利用している時に、うまくいかない場合がいくつかあります。
- APIのエンドポイントにダウンタイムが発生し、アプリケーションに不具合が生じる
- APIを統合してもうまく動作しなかったり、エラーが発生したりする
- データの処理で、アプリケーションを遅くするような問題がある
これをより深く理解するために、配送業者から提供されている APIを利用している ECサイトを例として挙げましょう。
ここでは APIは、関連サービスのプロバイダを統合し、データがシームレスに交換・処理されるようにするために使われます。
別のアプリケーションが、注文処理を速くするためにバックグラウンドで動作しますので、発注の際に発動する処理は複数あります。
サイトは注文データをアプリケーションに渡し、複数の配送業者の配送料を取得します。
配送業者が選択されて出荷されたら、配送追跡データが、関連するアプリケーションの間で同期され、顧客は注文の状態を確認できるようになります。
それぞれの注文は、1つ1つ、同じ方法で処理されていきます。
どこかの処理レベルでエラーかバグがあれば、注文処理の流れ全体に影響を及ぼし、最終的にはアプリケーションを遅くするボトルネックの原因となります。
なぜ監視の戦略を考えるべきなのか
IoTアプリケーションの波に乗って、APIは、家庭用電化製品から、相互通信機能を持つ車やその他のスマートガジェットまで、全てが完全に繋がる世界の基盤を作ってきました。
APIの監視をすることで、パフォーマンスの監視や、可用性の問題の警告が行われ、このデバイスのネットワークの維持を助けてくれるのです。
あなたやサードパーティが提供する、既存のアプリケーションに統合した APIに、パフォーマンスの問題があれば、デジタル体験における直接的な打撃となります。
API監視は、問題の箇所を特定し、エンドユーザに影響が及ばないようにすることの助けとなります。
また、APIの機能のテストや、正しくアプリケーションが統合されていることを確認するための、サードパーティの APIの状態監視が簡単になります。
あるべき姿の API監視戦略で、次のようなことがわかるはずです:
- APIは起動中で、利用可能な状態か?
- 返ってくるデータは正しく、定義されたフォーマットに沿っているか?
- API監視で収集されたデータはパフォーマンス解析につながるものか?
- 開発者や運用担当者に送信されるアラートは、目の前の問題を解決するために適切に設定されているか?
Catchpointは、APIテストモニターを用いた API監視機能を提供しています。
ユーザは、自らが提供する APIのパフォーマンスを解析し、可用性の問題を特定することが可能です。
API監視テストによって収集されたデータは、異なる時間帯のパフォーマンス状態の傾向を把握することに役立つでしょう。
Catchpointが提供する APIを活用して、あなたのアプリケーションの監視機能を強化することもできます。
APIインテグレーションの範囲は選択可能で、監視のために設定されたテストから生成されたデータを、管理・利用することが簡単になります。
API監視の必要性と、パフォーマンスと可用性の問題について継続的にテストしていくことの重要性については、私達の新しい電子書籍 “APIMonitoring: A Primer” で詳しく書いています。
更に知りたければ、 こちらからダウンロードして下さい。