<\/HEAD>
組織はこれまで以上に広範囲かつ地理的に分散したオーディエンスにサービスを提供しています。グローバルなリーチを持つ組織は、世界中でコンテンツを読み込もうとするとレイテンシが発生することがあります。Content Delivery Networks (CDNs) はエッジサーバーを使用して、要求元のクライアントアプリケーションにより近い場所でコンテンツを配信します。ヨーロッパのクライアントアプリケーションが北カリフォルニアのサーバーにアクセスする代わりに、ヨーロッパのエッジサーバーからコンテンツを配信できます。CDN Settings により、エッジサーバーが北カリフォルニアのオリジンに戻って更新されたコンテンツを取得する頻度を制御できます。ここでの利点は二重で、オリジンサーバーへのパフォーマンス負荷が減り、エンドユーザーのレイテンシも減少します。 <\/SPAN><\/P> <\/SPAN><\/P>ArcGIS Enterprise は CDNs を活用して静的ファイルをエッジロケーションにプッシュできます。この例では、Amazon の CDN サービス (CloudFront) を使用して静的な ArcGIS Enterprise ファイルを世界中に配布し、読み込み時間の短縮とバックエンドサーバーへの負荷軽減を実現しています。このブログでは、エッジキャッシュの候補となるコンテンツと対応するコンテキストパス、ArcGIS Enterprise の前に AWS CloudFront を使用する方法のウォークスルー、および CDN 使用時の追加考慮事項について詳述しています。<\/SPAN><\/P> <\/SPAN><\/P>特定のエッジサーバーリージョンで最初のユーザーは常にオリジンから直接リクエストが配信されます。その後、その同じリージョン内のユーザーにはエッジキャッシュからコンテンツが提供されます。リクエストは設定された Time To Live (TTL) に達するまでエッジサーバーから配信され続けます<\/SPAN>。 <\/SPAN><\/P><\/P>Amazon CloudFront に関する詳細情報: <\/P>Content Delivery Network (CDN) | Low Latency, High Transfer Speeds, Video Streaming | Amazon CloudFront<\/A> <\/P><\/P>
<\/P>
ArcGIS Enterprise コンテンツ: <\/H3><\/P>Secure Content<\/EM><\/H5>ArcGIS Enterprise はトークンが必要なセキュアコンテンツを本質的にサポートしています。このコンテンツは頻繁に変わり、各ユーザーが異なるトークンを取得するため、キャッシュには適していません。これによりすべてのリクエストはエッジキャッシュからではなくオリジンへ転送されます。<\/SPAN><\/P><\/P>Dynamic Content<\/EM><\/H5>ArcGIS Enterprise は dynamic <\/EM>および static <\/EM>コンテンツの混合を提供します。ArcGIS Enterprise の前に CDN を追加する際には、キャッシュすべき異なるタイプのコンテンツを理解することが重要です。もし dynamic,<\/EM> と想定されるコンテンツをキャッシュすると、アプリケーションでエラーが発生する可能性があります。以下には Portal for ArcGIS<\/EM> と ArcGIS Server<\/EM> の両方について、コンテキストパスと関連するコンテンツの内訳があります。<\/P><\/P>Static Content:<\/EM><\/SPAN><\/H5>ArcGIS<\/SPAN> Enterprise は CSS、JavaScript、HTML ファイル、および画像など、多くの静的コンテンツも提供します。このコンテンツは変更頻度が低く、一般的にエッジキャッシュに適しています。以下にはエッジサーバー向けの良い候補となる static<\/EM><\/SPAN> コンテンツと動的コンテンツでありながらエッジキャッシュには適さないものの例があります。<\/SPAN><\/P> <\/P><\/P>Portal for ArcGIS<\/H5>静的コンテンツ (context path)<\/TH>動的コンテンツ (context path)<\/TH><\/TR><\/THEAD>Portal JS Files (portal\/home\/10.7.1\/*)<\/TD>Sharing API (portal\/sharing\/*)<\/SPAN><\/TD><\/TR>Portal HTML Files (portal\/*.html)<\/SPAN><\/TD>Portal Admin (portal\/portaladmin\/*)<\/SPAN><\/TD><\/TR>Portal JavaScript API (portal\/jsapi\/*)<\/SPAN><\/TD><\/TD><\/TR>Portal Image Files (portal\/home\/images\/*)<\/SPAN>
* 上記の例はすべて Web Adaptor 名 "portal" を使用しています。Web Adaptor 名を別の名前にした場合は "portal" をご自身の Web Adaptor 名に置き換えてください。
* JavaScript API はご利用中の ArcGIS Enterprise のバージョンによって更新が必要です。
ArcGIS Server
静的コンテンツ
動的コンテンツ
Tiled Services (server/rest/services/<Service Name>/MapServer/tile/*)
Sharing API (server/sharing/*)
Map Services の Select Queries *
* 上記の例はすべて Web Adaptor 名 "server" を使用しています。Web Adaptor 名を別名にした場合は "server" をご自身の Web Adaptor 名に置き換えてください。
ArcGIS Enterprise と共に CloudFront を CDN として使用する:
ArcGIS Enterprise を CloudFront と共に展開するには三つのステップがあります。最初のステップはディストリビューションを作成し、キャッシュのデフォルト動作を指定することです。このステップは重要であり、動的コンテンツがエッジサーバーを通過してオリジンへ届くことを可能にします。第二ステップは追加のキャッシュ動作を追加することです。このステップではディストリビューションから特定のパスパターンをキャッシュできるようになります。最後のステップは既存の DNS レコードセットを CloudFront ディストリビューション CNAME にマッピングすることです。
- 上記で作成したディストリビューションにキャッシュ動作を追加する
CloudFront ディストリビューションを作成する:
- AWS コンソールから「Networking & Content Delivery」セクション内の CloudFront サービスへ移動します。
- 「Create Distribution」を選択し CloudFront 展開ウィザードへ入ります。
- 「Select a Delivery Method」ページで Web の「Get Started」を選択します。
- 以下情報で Origin Settings を入力します:(Amazon ドキュメント:Origin Settings)

注意: Origin Domain Name は ArcGIS Enterprise にアクセス可能なロードバランサーまたはサーバーになります。この例では Application Load Balancer を使用していますが他にも対応可能です。CloudFront はこの場所へリクエストを転送しエッジキャッシュを構築します。


注意:
デフォルト動作として
Cache Based on Selected Request Headers
が設定されていることを確認してください to <\/SPAN>None<\/STRONG><\/EM><\/SPAN> portalのDynamic Contentをサポートするため。<\/SPAN><\/P>
<\/SPAN>注意:<\/STRONG> 必ず <\/SPAN>Object Caching<\/STRONG><\/EM><\/SPAN> が <\/SPAN>Use Origin Cache Headers<\/STRONG><\/EM><\/SPAN> に設定されていることを確認してください。Portalはデフォルトでレスポンスヘッダーに <\/SPAN>Cache-Control: no-cache<\/EM><\/STRONG><\/SPAN> を送信します。CloudFrontはこれを上書きする機能があります。追加のキャッシュ動作は次のステップで追加され、これを上書きして静的コンテンツのキャッシュを許可します。<\/SPAN> <\/SPAN> <\/SPAN>
注意:<\/STRONG> DNSを「Alternate Domain Names」に追加することを確認してください。これはDNSレコードセットをCloudFrontドメイン名にマッピングするときに重要です。<\/SPAN><\/LI><\/OL><\/LI>CloudFrontホームページから配信IDを見つける<\/LI>「Behaviors」タブに移動する<\/LI>「Create Behavior」を選択する<\/LI>以下の内容で動作を設定する
<\/H3>注意: <\/STRONG> パスパターンはこの動作を適用するパスを決定します。このオプションによりコンテンツのキャッシュが可能になります。<\/SPAN><\/SPAN>
注意:<\/STRONG> 初期展開とは異なり、「Object Caching」のオプションで「Customize」を選択してください。これにより、オブジェクトがエッジロケーションに存在するデフォルト、最小、および最大時間(秒単位)を指定できます。私の場合は86400秒(1日)に設定しています。<\/SPAN><\/LI>以下の「Path Patterns」についてもこの手順を繰り返す<\/STRONG>
注意:<\/STRONG> パスパターンは上記の「ArcGIS Enterprise Content」セクションの表に関連しています。そこにはタイルマップサービスのパスパターンもあります。
<\/SPAN>注意:<\/STRONG> アップグレード後、「portal/home/10.6.1」のパスパターンは使用しているArcGIS Enterpriseの特定バージョンに合わせて更新する必要があります。
<\/SPAN><\/LI><\/OL> 3. DNSレコードをCloudFront CNAMEにポイントする<\/P>
<\/H3>考慮事項<\/H3>これらの手順はArcGIS Enterprise展開のインストールと構成が完了した後に行います<\/SPAN><\/LI>アップグレード後はCloudFrontキャッシュが無効化されていることを確認してください<\/SPAN><\/LI>AmazonのCloudFront CDNの料金モデルをご確認ください: https:\/\/aws.amazon.com\/cloudfront\/pricing\/<\A>