Radar

概要

Radarは、データ収集方法論の基盤を形成します。Radarは、コンテンツページまたはアプリケーションプロバイダーのページに埋め込まれたJavaScriptスクリプトを使用して、データセンターまたは配信プラットフォームのパフォーマンスと可用性に関する情報を収集します。

Radarクライアントは、顧客のウェブページおよびモバイルアプリケーション内で実行されるJavaScriptアプリケーションです。その主な目的は、Openmixを介したインテリジェントなルーティング決定を推進するために使用されるネットワークパフォーマンスデータを収集し、Page Load Time、Page Resource Timing、Video Playback Metricsなどの他のNetScaler Intelligent Traffic Managementサービスを有効にするためのオプションのプラグインを提供することです。

Radarクライアントは、フル機能でありながら軽量で、目立たないように設計されています。クライアントは、ほとんどのページリソースがダウンロードされた後に、その作業の大部分を実行するまで待機し、可能な限りすべてのネットワーク通信は非同期的に実行されます。これらの指示は、セッション中に次に測定するプラットフォームを指定します。これは、コミュニティプラットフォームと、そのコミュニティメンバーに固有のプライベートプラットフォームの中から選択されます。また、実行される測定の種類も示します。これには、可用性、ラウンドトリップタイム、スループット、またはその他のメトリック収集が含まれる場合があります。

可能な限り小さくするために、JavaScriptはGoogle Closure Compilerを使用して高度な最適化でコンパイルされます。高度なオプション機能は、それらを使用することを選択した顧客向けのプラグインとして提供されます。

Radarコミュニティ

独自のコミュニティベースのアプローチを使用して、Radarは、クラウドコンピューティングやストレージからコンテンツおよびアプリケーション配信ネットワークに至るまで、世界最大の公共インフラのグローバルなパフォーマンスと可用性に比類のない透明性をもたらします。Radarを使用することで、顧客は各訪問者にとって最適なプラットフォームと最悪なプラットフォームを迅速に見つけることができます。

Radarの概要

Radarは、インターネット初のクラウド監視協同組合です。コミュニティメンバーになることは、プロバイダー、国、ネットワークごとの詳細なセグメンテーションを含む、履歴レポートデータベースへの無制限のアクセスを意味します。

Radarコミュニティメンバーであることは、内部および外部のコンテンツ配信インフラストラクチャによって提供されるサービスレベルを把握するための豊富なツールセットも提供します。Radarのユニークな点は、ウェブサイトの訪問者を利用して、企業が現在使用していないプラットフォームから受けるであろうエクスペリエンスを測定できることです。同じ方法論により、SLAに対するパフォーマンスの継続的な評価を含め、クラウドプラットフォームのライフサイクル全体にわたる客観的な評価が可能になります。

ウェブページにシンプルなJavaScriptタグを追加するか、モバイルアプリケーションにSDKを追加することで、顧客は各訪問者を仮想の「テストエージェント」に変えることができます。Radarは、参照オブジェクトをダウンロードし、サイトまたはウェブアプリケーションの実際の最終ユーザーから見た内部および外部のインフラストラクチャ、データセンター、配信ネットワーク、クラウドプラットフォームを比較することで、デバイスベースの測定をトリガーします。

参加の主な利点

Radarは、監視とデータ収集へのアプローチを通じて、複数のウェブ配信の課題に対処します。Radarコミュニティに参加する主な利点は次のとおりです。

  • あらゆる場所のあらゆるネットワークにエンドユーザーがいる大規模なテスト環境(これまでに42,000以上の認識済みネットワーク)。
  • 試用前にサービスプロバイダーに関する重要な情報を入手し、より情報に基づいた意思決定を行う。
  • 現在のプロバイダーのパフォーマンスと、ユーザーがいる地域といない地域での動作に関する透明性。
  • ウェブおよびモバイルユーザーに真の違いをもたらすメトリック(パフォーマンス、可用性、QoS)に焦点を当てる。
  • 国、ネットワーク、地域、州レベルまでのグローバル(190カ国以上)な情報への無制限のアクセス。
  • エンドユーザーを使用することによるリアルで偏りのないデータ。Radarデータは、合成テストや推測ではなく、「実世界」の情報。
  • すべてのユーザーが同じではない:異なるマシン、接続、デバイスを理解する。
  • 実際のページのパフォーマンスの可視性。

ベンチマーク

ITM Radarは、3つの主要なベンチマークを提供します。

  • コミュニティベンチマーク
  • プライベートベンチマーク
  • ページロードベンチマーク

CDN、クラウド、データセンターのコミュニティベンチマーク

コミュニティ測定は、クラウドソーシングモデルを通じて提供され、顧客にグローバルな地理的および論理的レベルでのベンダーのパフォーマンスと可用性のビューを提供します。コミュニティ測定により、エンドユーザーから見たベンダーのエクスペリエンス品質を比較し、コンテンツおよびアプリケーション配信のベンダーとサプライヤーを評価する際に「もしも」分析を可能にします。クラウドソーシングモデルを使用することで、ITMの顧客は、顧客がユーザーの高密度を持っていない場所、またはまったくユーザーがいない場所でも、ベンダーのパフォーマンスを評価および監視する際に、より高い粒度とデータ品質を得ることで利益を得ます。

測定自体は、コンテンツ所有者のサイトまたはアプリケーションでRadar JavaScriptクライアントまたはモバイルSDKロジックを実行するときにエンドユーザーがダウンロードする、さまざまなクラウドおよびCDNベンダーにまたがって配置された標準オブジェクトセットを使用します。

以下のメトリックはITMに報告され、ポータルまたはAPIレポートインターフェース内で表示されます。

  • 可用性 — オブジェクトがロードされるかどうか。
  • 応答時間 — 接続確立のすべてのノイズが完了した後、サーバーが後続のリクエストに応答するのにかかる時間。これは、ブラウザからプロバイダーへのTCPラウンドトリップタイム(RTT)の比較的近い近似値です。
  • スループット — これは、100 KBオブジェクトの取得から測定された、接続のデータレート(キロビット/秒)です。

プライベートベンチマーク

Radarタグの展開の一環として、ITMは、顧客が自身の訪問者によって測定される独自の「ベンチマーク」テストを作成する機能を提供します。これは、データセンターまたは自身のCDNおよびクラウド契約用です。コミュニティベンチマーク測定と同様に、可用性、応答時間、スループットという同じメトリックが提供され、顧客は既存のコンテンツ配信戦略を効果的に評価できます。

このプライベート情報は顧客のみが利用でき、共有されません。 使用例は次のとおりです。

  • 独自のデータセンターアーキテクチャ
  • 独自のテストオブジェクトまたはページを使用
  • 特定のベンダーまたはベンダーセットとの独自の契約およびアカウントを使用

Radarページロードベンチマーク

Radar内で、ITMは、タグが実装されているページがどのようにダウンロードされているかに関する詳細情報を顧客が見る機能を提供します。ITMは、実際の最終ユーザーがウェブページとやり取りする際に経験しているパフォーマンスを確認できる情報を提供します。データは、多くの新しいバージョンのブラウザでサポートされているNavigation Timing APIを通じて提供されます。

Radarタグ

Radarタグは、JavaScriptスニペットを使用して統合できます。Radarタグページに移動するには、次の手順を実行します。

  1. NetScaler Intelligent Traffic Managementポータルにサインインします。
  2. 左側のナビゲーションメニューから、Radar > Javascript Tagを選択します。

Radar JavaScriptタグ

Radarタグページが開きます。

Radarタグをまだ設定していない場合、画面上部にオレンジ色の水平バーが表示され、Radar測定が検出されなかったことを示します。

このオレンジ色のバーは、タグが正しく設定されていない場合にも表示されます。

Radarタグ

あるいは、Radarタグが期待どおりに機能している場合、緑色の水平バーが表示され、Radar測定が正常に取得されたことを示します。

このページでは、使用状況に適用されるタグバージョンを選択し、クリップボードにコピーできます。

注: このJavaScriptスニペットを変更しないことが重要です。コードには重要な情報が含まれており、変更すると予期せぬ動作や信頼性の低い動作が発生する可能性があります。

Radarタグの統合

Radarタグの統合は比較的簡単です。以下のJavaScriptスニペットのいずれかをサイトのマークアップに追加するだけです。測定したいページのHTMLに配置します。ページの最下部、閉じボディタグ </body> の前に配置することをお勧めします。

デフォルトのRadarタグ

これは、推奨されるRadarタグのバージョンです。このバージョンは、ロードイベントが完了するまで待機してからRadarクライアントをダウンロードおよび実行し、ロードイベントが中断されないことを保証します。

<script>
if (typeof window.addEventListener === "function") {
    window.addEventListener("load", function() {
        if (window.cedexis === undefined) {
            var radar = document.createElement("script");
            radar.src = "//radar.cedexis.com/1/54621/radar.js"; // ユーザー固有の値に置き換えてください
            document.body.appendChild(radar);
        }
    });
}
</script>
<!--NeedCopy-->

このタグのバージョンは、Radarクライアントのダウンロードがページのさらなる解析をブロックするのを防ぎますが、ロードイベントが発火する前に実行します。これは主に、インラインJavaScriptの使用を妨げるコンテンツセキュリティポリシー設定を使用している顧客向けです。また、Radarクライアントが可能な限り早くロードする必要があるVideo QoSプラグインを使用している顧客向けでもあります。

<script src="//radar.cedexis.com/1/54621/radar.js" async></script>
<!--NeedCopy-->

最近の測定

最近の測定テーブルでは、Radarを使用して取得された最新の測定値を表示できます。

Radarの最近の測定

最近の測定ボタンをクリックします。以下の情報が表示されます。

  • 測定がUTCで取得された日時。
  • 測定が取得された国。
  • 測定に使用されたプラットフォーム。
  • プラットフォームのID。
  • 取得された測定の種類、すなわち接続時間(ミリ秒)、応答時間(ミリ秒)、またはスループット(キロビット/秒)。
  • 測定の実際の値(接続時間と応答時間はミリ秒、スループットはキロビット/秒)。

Radarタグ

Radar測定バーは、ITMポータルに初めてログインしたときに、Radar ダッシュボードページにも表示されます。

Radarダッシュボード

モバイルアプリとの統合

モバイルアプリとの統合は、JavaScriptクライアントを実行する非表示のウェブビューを囲むラッパーを介して行われます。これにより、ブラウザとモバイルアプリで収集されたデータの一貫性が保証されます。

iOSアプリとRadarを統合する手順 以下のGitHubリポジトリには、iOSアプリとRadarを統合するためのラッパーコードとステップバイステップの手順が含まれています。

iOS用Radar Runner

AndroidとRadarを統合する手順 Android Radarは、RadarをAndroidアプリに簡単に統合できるクライアントライブラリです。こちらで入手できます。

AndroidRadarライブラリ

NetScalerとの統合

Radarタグは、Openmixがより良いルーティング決定を行うことを可能にする測定値をOpenmixに提供するため、重要です。タグを使用するウェブページが多いほど、ルーティング決定はより良くなります。

以下の方法により、NetScalerを使用してRadar JavaScriptタグをウェブページに配置できます。コマンドラインまたはNetScaler構成ユーティリティのいずれかを使用できます。

これらの方法により、応答にRadarタグを挿入できます。Radarタグを挿入するには、リライトを使用する必要があります。リライトは、アクションの作成、ポリシーの構成、ポリシーのバインドの3つのステップに分けられます。

コマンドライン構成

コマンドラインでのリライトアクションの構成

テンプレート:

add rewrite action <name> <type> <target> [<stringBuilderExpr>] [-pattern <expression> | -search <expression>] [-refineSearch <string>] [-comment <string>]
<!--NeedCopy-->

例:

add rewrite action radar_tag action insert_after HTTP.RES.BODY(HTTP.RES.CONTENT_LENGTH).BEFORE_STR("</body>") '\"<script async src=\\"//radar.cedexis.com/1/<customer_id>/radar.js\\"></script>\"'
<!--NeedCopy-->

注: <customer_id>と表示されている場所に独自の顧客IDを挿入してください。

コマンドラインでのリライトポリシーの構成

テンプレート:

add rewrite policy <name> <rule> <action> [<undefAction>] [-comment <string>] [-logAction <string>]
<!--NeedCopy-->

例:

add rewrite policy radar_tag_policy HTTP.RES.HEADER("Content-Type").TO_LOWER.CONTAINS("text/html") radar_tag_action
<!--NeedCopy-->

コマンドラインでのリライトポリシーのバインド

テンプレート 1:

bind vpn vserver <name> [-policy <string> [-priority <positive_integer>] [-secondary] [-groupExtraction] [-gotoPriorityExpression <expression>] [-type <type>]] [-intranetApplication <string>] [-nextHopServer <string>] [-urlName <string>] [-intranetIP <ip_addr> <netmask> ] [-staServer <URL> [-staAddressType ( IPV4 | IPV6 )]] [-appController <URL>] [-sharefile <string>]
<!--NeedCopy-->

例 1:

bind vpn vserver <name_of_vserver> -policy radar_tag_policy -type RESPONSE -priority 10
<!--NeedCopy-->

テンプレート 2:

bind cs vserver <name> (-lbvserver <string> | -vServer <string> | (-policyName <string> [-targetLBVserver <string>] [-priority <positive_integer>] [-gotoPriorityExpression <expression>] [-type ( REQUEST | RESPONSE )] [-invoke (<labelType> <labelName>) ] ) | (-domainName <string> [-TTL <secs>] [-backupIP <ip_addr|ipv6_addr|*>] [-cookieDomain <string>] [-cookieTimeout <mins>] [-sitedomainTTL <secs>]))
<!--NeedCopy-->

例 2:

bind cs vserver <name_of_vserver> -policyName radar_tag_policy -type RESPONSE -priority 10
<!--NeedCopy-->

テンプレート 3:

bind lb vserver <name>@ (<serviceName>@ [- weight <positive_integer>]) | <serviceGroupName>@ | (- policyName <string>@ [-priority <positive_integer>] [- gotoPriorityExpression <expression>] [-type ( REQUEST | RESPONSE )] [-invoke (<labelType> <labelName>) ] )
<!--NeedCopy-->

例 3:

bind lb vserver <name_of_vserver> -policyName radar_tag_policy -type RESPONSE -priority 10
<!--NeedCopy-->

テンプレート 4:

bind rewrite global <policyName> <priority> [<gotoPriorityExpression>] [-type <type>] [-invoke (<labelType> <labelName>) ]
<!--NeedCopy-->

例 4:

bind rewrite global radar_tag_policy 100 -type RES_DEFAULT
<!--NeedCopy-->

GUIユーティリティの構成

GUIリライトアクション

  1. NetScaler Configurationページの左側のナビゲーションメニューから、AppExpert -> Rewrite -> Rewrite Actionsに移動します。

  2. Addボタンを選択します。

  3. Configure Rewrite Actionページで、例に示すように式を入力します。リライトアクション

  4. Radarスクリプトで、<customer_id>とマークされたスペースに顧客IDを入力します。

  5. OKを選択します。リライトアクションの作成が完了しました。

GUIリライトポリシー

  1. NetScaler Configurationページの左側のナビゲーションメニューから、AppExpert -> Rewrite -> Rewrite Policiesに移動します。

  2. Addボタンを選択します。

  3. Configure Rewrite Policyページで、例に示すように式を入力します。

    リライトポリシー

  4. Createをクリックします。

リライトポリシーの構成が完了しました。

GUIリライトポリシーのバインド

ポリシーの構成が完了したら、最後のステップはPolicy Managerを使用してポリシーをバインドすることです。

  1. Rewrite Policiesページに移動します。

  2. Radarタグ用に作成したリライトポリシーを選択します。

  3. Policy Managerに移動します。

    リライトポリシーのバインド

  4. Policy Managerページで、次の手順を実行してポリシーをバインドできます。

    • Bind Pointでは、Override GlobalVPN Virtual ServerContent Switching Virtual Server、またはLoad Balancing Virtual Serverを選択するオプションがあります。
    • ProtocolにはHTTPを選択します。
    • Connection TypeにはResponseを選択します。
    • Virtual Serverには独自の仮想サーバー名を使用します。

    リライトポリシーのバインド

    • Continueをクリックします。
    • 次のページで、以前に作成したRewrite Policyを選択します。
    • Binding Detailsを追加します。
    • Bindをクリックします。

    リライトポリシーのバインド

上記の方法により、ウェブページにRadarタグを挿入できます。ただし、これは基本的な実装であることに注意する必要があります。タグが実装されているページをより適切に制御するために、さらにフィルタリングを行うことができます。

Radarタグの構成

Radarタグ構成ページでRadarを設定できます。

  1. NetScaler Intelligent Traffic Managementポータルにサインインします。
  2. 左側のナビゲーションメニューから、Radar > Tag Configurationを選択します。

Radarナビゲーション

Radarタグ構成ページが開きます。ここで、Radar測定をカスタマイズするためのさまざまなオプションを設定できます。Radar JavaScriptには、タイミングと遅延要素、コミュニティおよびプライベート測定のエンドユーザーによるテスト完了数、可用性を測定するためのタイムアウト値などを調整するためにカスタマイズできるパラメーターがあります。

Radar構成オプション

以下の表は、構成オプションとそれぞれのデフォルト設定に関する情報を提供します。変更を行う際は、画面下部のUpdate Radar Settingsをクリックして変更を適用してください。

機能 パラメーター 説明 デフォルト設定
タイミングオプション 起動遅延 ページのonLoadイベントとRadarがナビゲーションタイミングを記録するまでの遅延(秒単位)。 2秒
  繰り返し遅延 測定セッション間の遅延(分単位)。値が5以上の場合、Radarタグは各繰り返し遅延間隔後にさらに測定を行います。値が0の場合、Radarタグは追加の測定を行いません。 5分
プロトコルオプション プライベートHTTPS測定を常に許可 HTTPウェブサイトからでもRadarクライアントがHTTPS測定を行うことを許可します。 Radarクライアントが実行されているページと一致するURLプロトコルを持つプラットフォームの測定を行います。
  HTTPS接続でのプライベートHTTP測定を許可。 HTTPSウェブサイトからRadarクライアントがHTTP測定を行うことを許可します。 Radarクライアントが実行されているページと一致するURLプロトコルを持つプラットフォームの測定を行います。
サンプルレート Radarサンプルレート Radarタグが測定を行うためにアクティブ化されるページの割合。 無効
プライベート測定 ページロードあたりの最大プライベート測定数 Radarがページロードごとに測定するプライベートプラットフォームの最大数。** 自動*
  最大プライベートスループット測定数 ページロードあたりのプライベートプラットフォームのスループット測定の最大数。** 4
コミュニティ測定 ページロードあたりの最大コミュニティ測定数 Radarがページロードごとに測定するコミュニティプラットフォームの最大数。** 自動*
  最大コミュニティスループット測定数 ページロードあたりのコミュニティプラットフォームのスループット測定の最大数。** 4

*自動とは、NetScaler Intelligent Traffic Managementが、エンドユーザーの場所に基づいて、特定のセッションで測定する必要があるプラットフォームの数を決定することを意味します。データがまばらな小規模ネットワークよりも、データが密な大規模ネットワークから、セッションあたりのプラットフォーム数を多く測定しようとします。

**これは、セッションあたりの最大測定試行回数です。たとえば、Radarはセッションあたり4つのプライベートプラットフォームを測定でき、それらはすべてRTTとスループットの両方を測定するように構成されています。しかし、最大プライベートスループット測定が2に設定されている場合、クライアントは最初の2つのプライベートプラットフォームを測定した後、スループット測定を含めるのを停止します。最後の2つのプラットフォームについては、RTTのみを測定します。

タイミングオプションを使用すると、Radarが測定を開始するまでに待機する必要がある時間を設定できます。

注: 起動遅延は秒単位、繰り返し遅延は分単位です。

Radarタイミングオプション

プロトコルオプション

通常、Radarクライアントは、実行中のページのプロトコルと一致するURLを持つプラットフォームのみを測定します。これらのオプションを使用すると、プライベートプラットフォームに対してその動作を上書きできます。たとえば、「Always Allow Private HTTPS Measurements」を有効にすると、クライアントはhttp://example.comからhttps://myprovider.com/r20.gifを測定でき、「Always Allow Private HTTP Measurements」を有効にすると、クライアントはhttps://example.comからhttp://myprovider.com/r20.gifを測定できます。

これらのオプションは、極端なユースケースを除いて、一般的に避けるべきです。適切なプライベート測定密度を確保するための最善の方法は、実際に本番環境で使用しているプラットフォームとプロトコルを測定するようにプラットフォームを構成し(それ以上は測定しない)、可能な限り多くの本番ページにRadarタグを展開することです。私たちはこれを「必要な場所にRadarを配置する」と呼ぶことがあります。

Radarプロトコルオプション

サンプルレートを使用すると、測定を収集するウェブページ(ユーザーが閲覧する)の割合を設定できます。たとえば、ウェブサイトが1日あたり100,000ページビューを獲得し、サンプルレートを5%に設定した場合、Radarは100,000ページビューのうち5%からのみ測定を収集します。

Radarサンプルレート

プライベート測定

これらの設定は、プライベートプラットフォームの測定に適用されます。プライベートプラットフォームとは、特定のCDN、クラウドプロバイダー、およびインフラストラクチャの他の部分を測定するためにPlatformsセクションで設定するものです。詳細については、プラットフォームセクションを参照してください。

Radarプライベート測定

このオプションを使用すると、コミュニティに情報を提供する際のRadarの動作を設定できます。

Radarコミュニティ測定

Radarテストの無効化

予期せぬ事態が発生した場合にRadar測定を迅速に無効にする必要がある場合、サイトへの緊急コード変更を避けるためにポータル内でそれを行うことができます。

Radarタグ構成ページで、EnabledトグルボタンをDisabledにクリックして、プライベート測定、コミュニティ測定、またはその両方を無効にします。

変更を確定するにはSave Radar Configurationをクリックします。変更が伝播するのに1〜2分かかる場合があり、その後Radar測定は停止します。

Radarプライベート測定の切り替え Radarコミュニティ測定の切り替え

Radarクライアントの方法論

クライアントの動作の基本的な側面はセッションです。クライアントが送信するすべてのデータはセッションに関連付けられます。セッションは、初期化リクエストとして知られるNetScaler® ITMサーバーへの呼び出しを行うことによって作成されます。セッションはかなり迅速に期限切れになり、有効なRadarデータのみが受け入れられることを保証するのに役立ちます。この機能により、Radar測定は常にセッショントランザクションIDに関連付けられたバッチで提供され、私たちはそれに関連付けられた測定を説明するために「Radarセッション」と呼ぶことが多いです。

Radarセッション

Radarセッションは、クライアントが実行する作業の主要な単位です。これは、顧客構成と測定するプラットフォームのセットを取得するためのNetScaler ITMサーバーへのリクエスト、それに続くそれらのプラットフォームを測定し、結果を報告するリクエストで構成されます。これらは非同期かつシリアル化された方法で行われるため、一度に1つのリクエストのみが行われます。通常のセッションは10秒以内に完了します。

プローブの種類

クライアントが送信するすべてのレポートには、関連するプローブタイプがあり、それがどのような種類の測定であり、どのように処理するかをシステムに伝えます。また、実行される測定の種類も示します。これには、可用性、ラウンドトリップタイム、スループット、またはその他のメトリック収集が含まれる場合があります。

可用性とパフォーマンスプロービング(ラウンドトリップタイムやスループットなど)の間には重要な関係があります。特定の測定セッションでは、特定のリソースの可用性が常に最初に測定されます。可用性測定が成功した場合にのみ、同じセッションで同じリソースの追加のパフォーマンス測定が行われる可能性があります。

特に遅いネットワークが可用性の停止に見舞われた場合、これにより、このネットワークを含むレポートの集計パフォーマンスが実際に向上する可能性があります。これは単なるレポート上のアーティファクトであり、NetScaler Intelligent Traffic Managementは常にリアルタイムの決定のために最も粒度の高い、ネットワーク固有のパフォーマンスデータを使用します。

可用性

コールドスタートプローブとしても知られる可用性は、サービスがキャッシュをウォームアップできるようにすることを目的としています。このプローブには測定値が関連付けられていますが、プロバイダーが利用可能かどうかを判断するために可用性プローブを使用します。

プラットフォームがコールドスタートプローブを実行するように構成されていない場合、可用性メトリックを提供するために、コールドスタートレポートの代わりにRTTプローブの結果を使用します。

同様に、サイトアクセラレーションサービスを測定する動的オブジェクトの場合、クライアントは小さなテストオブジェクトを一度ダウンロードし、コールドスタートと応答時間の両方の測定値を報告します。

テストオブジェクト 定義
標準 リソースタイミングのタイムスタンプを使用: responseStart - requestStart
動的 リソースタイミングのタイムスタンプを使用: responseEnd - domainLookupStart

RTT

テストオブジェクト 間隔 API 説明
標準 responseStart - requestStart リソースタイミング HTTPリクエストに応答して単一のパケットが返されるまでの時間。
動的 responseEnd - domainLookupStart リソースタイミング DNSルックアップ時間、接続時間、応答時間を含む、リクエストが処理されるまでの時間。

スループット

テストオブジェクト 間隔 API 説明
標準 ファイルサイズ(キロバイト)* 8 / (responseEnd - requestStart) リソースタイミング 大規模なテストオブジェクトのダウンロードに基づいて、リクエストと応答全体で測定されたスループット(キロビット/秒)。
動的 ファイルサイズ(キロバイト)* 8 / (responseEnd - domainLookupStart) リソースタイミング 大規模なテストオブジェクトのダウンロードに基づいて、リクエストと応答全体で測定されたスループット(キロビット/秒)。これは通常、RTTテストオブジェクトがすでにダウンロードされている場合、接続時間やDNSルックアップ時間は含まれません。

テストオブジェクト

テストオブジェクトは、プラットフォームでホストされ、クライアントによってダウンロードされて測定を生成するファイルです。このセクションでは、クライアントがサポートするさまざまな種類のテストオブジェクトについて説明します。すべてのオブジェクトタイプがすべてのプラットフォームに適用されるわけではありません。

必須ヘッダー:

Resource Timing APIによって提供される低レベルのタイミングデータへのJavaScriptアクセスを許可するために、Timing-Allow-Origin応答ヘッダーが必要です。推奨設定はTiming-Allow-Origin: *であり、これは任意ドメインで実行されているJavaScriptにリソースのタイミングデータへのアクセス許可を付与する必要があることを示します。

標準

標準テストオブジェクトはメディアであり、クライアントはImageオブジェクトのsrc属性を設定することでダウンロードします。ダウンロード後、クライアントはResource Timing APIを使用してパフォーマンスデータを収集します。これらのテストオブジェクトはTiming-Allow-Origin応答ヘッダーとともに提供される必要があります。詳細については、Timing-Allow-Originヘッダーセクションを参照してください。

標準小

標準小テストオブジェクトは、クライアントが軽量なネットワークリクエストを行う必要がある場合に使用される単一ピクセル画像ファイルです。

標準小テストオブジェクトは、以下のユースケースで使用されます。

  • 非動的コールドスタートプローブ
  • 非動的ラウンドトリップタイムプローブ
標準大

標準大テストオブジェクトは、プラットフォームのスループットを測定するために使用される100KBの画像ファイルです。

大規模オブジェクトの命名: スループットを計算するために、クライアントはテストオブジェクトのサイズを知る必要があります。クライアントは、ファイル名内のどこかにKBを探すことでファイル名を決定します。たとえば、r20-100KB.png。顧客は、ファイル名が同じ方法でファイルサイズを含んでいる限り、異なるサイズの画像ファイルを測定できます。たとえば、myimage-2048kb.jpg

動的

動的テストオブジェクトは、サイトアクセラレーションサービスに関連するパフォーマンスを測定するために使用されます。 それぞれが、Navigation Timing APIからタイムスタンプを収集し、それらを親ページに投稿できるJavaScriptを含むHTMLファイルです。クライアントはiframeを使用してテストオブジェクトをダウンロードし、これらのタイムスタンプを取得して測定を計算します。

セキュリティと検証

テストオブジェクトは40KBのオブジェクトです。テストオブジェクトの新しい機能は、クエリパラメーターとサーバーがアクセスできる秘密鍵に基づいて提供されるHMAC(ハッシュベースメッセージ認証コード)です。このHMACは測定値とともに返送され、Radarクライアントがテストオブジェクトにアクセスでき、何もキャッシュされていないことを検証できます。

動的テストオブジェクトと標準テストオブジェクトの違い:

標準のRadar測定では、テストオブジェクトのダウンロードに関連する主要なリクエストアクティビティのみを分離しようとしますが、サイトアクセラレーションサービスでは、より多くのアクティビティを測定することが目標です。したがって、DNSルックアップと接続時間も含まれます。また、動的測定は、エッジキャッシュだけでなく、サービスオリジンにヒットしたときのリクエストパフォーマンスを測定することを目的としています。

ポータルでは、次の手順を実行してこの方法論を選択できます。

  • 左側のナビゲーションメニューから、Platformsに移動します。
  • ページの右上隅にあるAdd Platformアイコンをクリックします。
  • Private Platform > Category > Dynamic Contentに移動します。
  • Radar Test Objectsダイアログボックスで、Customize Probesチェックボックスをクリックします。
  • Response TimeのURLを入力し、Object TypeドロップダウンリストからWebpage Dynamicを選択します。

動的小テストオブジェクトは、サイトアクセラレーションサービスに同じプローブを使用して可用性とラウンドトリップタイムを測定するために使用されます。

iNav

iNavテストオブジェクトは、多数のタスクを実行できるJavaScriptを含む静的HTMLファイルです。クライアントは、iframeでHTMLファイルをロードするURLにクエリ文字列パラメーターを含めることで、実行したいタスクを示します。 iNavテストオブジェクトは、以下のユースケースをサポートします。 iNavコールドスタート iNavラウンドトリップタイム

iUNI

iUNIテストオブジェクトは、プラットフォームのRadar測定セットに関連付けられたUNI値を検出するために使用されます(もう1つの方法は、別のテストオブジェクトを必要としないCORS AJAXです)。

AJAX GET

AJAX GET方法論は、顧客が測定したい任意のURLで一般的に使用できます。ただし、Timing-Allow-Originヘッダーと適切なAccess-Control-Allow-Originヘッダーとともに提供されることを条件とします。 ポータルでは、次の手順を実行してこの方法論を選択できます。

  • 左側のナビゲーションメニューから、Platformsに移動します。
  • ページの右上隅にあるAdd Platformアイコンをクリックします。
  • Private Platform > Category > Dynamic Contentに移動します。
  • Radar Test Objectsダイアログボックスで、Customize Probesチェックボックスをクリックします。
  • Response Timeを入力し、Object TypeドロップダウンリストからAJAX (GET)を選択します。

Timing-Allow-Originヘッダー

Resource Timing APIによって提供される低レベルのタイミングデータへのJavaScriptアクセスを許可するために、Timing-Allow-Origin応答ヘッダーが必要です。 推奨設定はTiming-Allow-Origin: *であり、これは任意ドメインで実行されているJavaScriptにリソースのタイミングデータへのアクセス許可を付与する必要があることを示します。

Radar API

Radarは、運用機能とデータ取得機能の両方に対応するAPIを提供します。

  • オペレーションAPI – Radarアカウントの追加/編集/削除、およびAPIを介してアカウントを実行するための制御メカニズム
  • RadarデータAPI – ITM RadarデータAPIは、Radarの公開コミュニティおよびプライベート測定データの集計を提供します。データは継続的に更新され、APIによる取得のために約60秒ごとにバッチ処理されます。データAPIは、顧客がRadarデータを自身のレポートやダッシュボードに統合できるように提供されます。APIへの単一の呼び出しで、すべての国および最大30の関心のあるASNについて、各プラットフォームのRadar四分位数または平均測定平均値を提供できます。

Radarレポート

Radarレポートは、Radarタグを通じて収集された動的データに対する強力な可視性を提供します。

Radarメンバーは、直感的でインタラクティブなチャートを通じて提示される豊富なデータセットにアクセスできます。収集されたデータセットは、顧客のRadarタグまたはモバイルSDK展開から収集されたプライベートデータのコンテキストとして、数十億の測定値の完全な公開データセットの両方を組み込みます。ページロード時間情報は顧客自身のタグで取得され、ウェブサイトおよびモバイルアプリケーションのエンドユーザーの実際のパフォーマンスエクスペリエンスに関する深い洞察を提供します。

パフォーマンスメトリックに加えて、Radarレポートは、ボリューム、地理、ユーザーエージェント、OSタイプ、ウェブサイトまたはモバイルアプリケーションの使用タイミングなど、エンドユーザーオーディエンスの多くの側面に関する洞察を提供します。

各レポートは以下に定義されていますが、すべてのレポートの重要な側面は次のとおりです。

プライマリおよびセカンダリディメンション

ディメンション

チャートのプライマリディメンションは、チャート上部のリスト選択リストを通じて選択されます。これをレポートの強力なピボットとして使用します。レポートをさらに絞り込むためにセカンダリディメンションも選択できます。

視覚化背景の切り替え

背景切り替え(ダーク) 背景切り替え

チャートはデフォルトで白い背景に設定されています。背景切り替えを使用して、高コントラストモニター用に背景を暗い色に切り替えます。

データのエクスポート

データのエクスポート

さらに、エンドユーザーはレポート上部のダウンロードリンクからチャートおよびテーブルデータをダウンロードできます。

フィルター:レポート期間

期間

Radarレポートは、過去60分、過去24時間、過去48時間、過去7日間、過去30日間、またはカスタム範囲の期間で生成できます。デフォルトビューは過去24時間です。

フィルター:プラットフォームと場所

フィルター

レポートは、データに基づいて適切なフィルターがわずかに異なります。最も一般的なものは次のとおりです。

  • プラットフォーム – 含めるプラットフォーム(プロバイダー)を1つ以上選択します。
  • 大陸 – 含める大陸を1つ以上選択します。
  • – 含める国を1つ以上選択します。
  • 地域 – 含める地理的地域(該当する場合)を1つ以上選択します。
  • – 含める地理的州(該当する場合)を1つ以上選択します。
  • ネットワーク – 含めるネットワーク(ASN)を1つ以上選択します。

フィルター:リソース

  • データソース - Radarコミュニティ全体またはサイト訪問者のみからのデータを含めます。
  • 場所のソース - クライアントIPまたはリゾルバーIPを場所のソースとして選択します。
  • Radarクライアントタイプ - RadarクライアントタイプをJavaScriptタグ、iOS SDK、またはAndroid SDKとして選択します。

フィルター

マイページビュー地理位置情報レポート

このレポートは、各国のページビュー数を示します。このマップビューは、チャート下部の「再生」ボタンを選択することで、時間経過とともに(レポートに選択された期間に基づいて)表示できます。

マイページビュー地理位置情報レポート

パフォーマンスレポート

このレポートは、定義された各プラットフォームのパフォーマンスの傾向を示します。

パフォーマンスレポート

統計分布レポート

このレポートは、アカウント用に定義された各プラットフォームの統計的な内訳を示します。

統計分布レポート

単一プラットフォーム地理位置情報レポート

このレポートは、一度に1つのプラットフォームについて、国別のRadarトラフィックの時間経過による分布を示します。

単一プラットフォーム地理位置情報レポート

単一プラットフォーム統計分布レポート

このレポートは、応答時間別のRadarトラフィックの時間経過による分布を示します。

単一プラットフォーム統計分布レポート