1. 優先順位付け

分散

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

コンテンツを効率的に転送するには:

  • Traffic Manager は、利用可能な衛星ノード全体にデータを分散し、コンテンツをアップロードするときに最も近い衛星ノードを選択します。これは、応答時間を改善することを目的としています。

  • グローバル データ センターから、ダウンロードをリクエストするまで、コンテンツは一時的に BLOB ストレージに保存されます。

  • ダウンロードをリクエストすると、コンテンツが BLOB ストレージからローカルの Sitecore Content Hub™ ストレージにコピーされます。

次の図は、コンテンツをアップロードした後のコンテンツの流れを示しています。

コンテンツの配信とフロー

コンテンツをアップロードすると、2 つの呼び出しが連続して行われます。

  • 最初の呼び出しは DistributedUpload エンドポイントに対して行われ、サテライト ノードの 1 つにコンテンツをアップロードします。この要求は Traffic Manager に対して行われ、特定のパラメーターに基づいて最適なサテライト ノードで解決されます。コンテンツは、ネットワーク遅延を回避するために同じサテライト ノードに最適にプロビジョニングされた一時的な BLOB ストレージに保存されます。

    コンテンツが正常に送信されるとすぐに、キーが {regionName,blobIdentifier,fileName} 形式で返されます。ここで

    • RegionName は、コンテンツがアップロードされるデータ センターの場所を示します。
    • BlobIdentifier は、BLOB コンテナ内の一意の識別子です。
    • FileName**_ は、M でのアセット/ファイル エンティティの作成中に使用されます。

    たとえば、{EastAsia,"20d42a00-60b4-427c-8bb6-fa3e62747313",test.jpg}

  • 2 番目の呼び出しは、ローカルのアップロード エンドポイントに対して、アップロードされたコンテンツのキーを使用して行われます。UploadController は、distributedUploadContext (JSON オブジェクト) を検証し、アセット エンティティを作成し、FetchJob を起動してサテライト ノードのコンテンツをフェッチします。

    fetchWorker は、fetchJob メッセージを取得し、ジョブ記述オブジェクトを解析して、フェッチ プロセスを開始するためのキーを取得します。一時 blob ファイルは Sitecore Content Hub のローカル ストレージにダウンロードされ、完了時に削除されます。

    ファイルが Sitecore Content Hub のローカル ストアに配置されると、ファイル配布フレームワークが開始されます。配信の目的で、設定されたすべてのサテライト ノードにファイルとレンディションを配布します。

Traffic Manager:

  • 保留中のジョブがなくなるまで、保留中のすべてのジョブを 25 個ずつのバッチでフェッチします。
  • バッチごとに、すべてのコピー操作を確認します。
  • 次のように、すべてのジョブを完了します。
    • コピーしたファイルのプロパティを更新する
    • エンティティのパブリック リンクを更新する
    • エンティティ キーを更新する
    • 注文ステータスの更新する (ジョブが注文の場合)
    • ジョブを完了する

Traffic Manager は FetchWorker を使用してフェッチ ジョブを処理します。フェッチ ワーカーは、コピー操作が完了するのを待ってから次のジョブに移動する必要があります。このコピー操作は、ファイルのサイズによっては時間がかかる場合があります。

コピーが進行中のためフェッチ ジョブを完了できない場合、Traffic Manager がそれを再度フェッチします。コピーするファイルのサイズが大きく、完了までに時間がかかる場合は、他のジョブが保留中でも繰り返しフェッチされます。ボトルネックを防ぐため、Sitecore Content Hub では 優先度レベルを分散ジョブに割り当てます。Traffic Manager は、2 つの分散ワーカーを使用してジョブの優先順位を処理します。

  • HighPriorityDistributionMonitorMessageWorker - 注文や分散アップロードなど、優先度が高いジョブを処理します。
  • DistributionMonitorMessageWorker - 通常のファイル配布など、優先度が不明のジョブを処理します。

次の例では、ジョブ 4ジョブ 5 は優先度が高いため、 HighPriorityFetchMessageWorker によって完了されます。ジョブ 1ジョブ 2ジョブ 3FetchMessageWorker が完了します。

ダウンロード指示の分散

ダウンロード指示パッケージは、コンテンツの可用性を高速化するために、地理的に異なるサテライト ノードに分散されるよう設定されています。

分散とは、たとえば、米国のユーザーがヨーロッパに地理的に保存されているアセットをダウンロードしないことを意味します。このローカル ストレージにより、ダウンロードの可用性が向上します。

この記事を改善するための提案がある場合は、 お知らせください!