AEM as a Cloud Service:一括プログラマティックアセットのアップロード(約50,000 アセット)に関する推奨される戦略と制限
この記事では、ダイレクトバイナリアップロードを使用したAEM as a Cloud Serviceへのプログラマティックアセットの一括アップロードのベストプラクティス、推奨制限、設定に関するガイダンスを提供します。
説明 description
環境
Adobe Experience Manager as a Cloud Service(AEMaaCS)(すべてのバージョン)
問題/症状
@adobe/aem-upload Node.js ライブラリを使用したダイレクト バイナリ アップロード アプローチを使用して、約50,000 アセットを外部システムからAEM as a Cloud Service DAMに取り込む必要があります。
Asset Compute サービスの過負荷やスロットリングのトリガーを回避するために、推奨される戦略、サポートされているスループット、バッチサイズ、同時実行、および公式の制限について確認を求めます。 エラーメッセージはまだ報告されていませんが、実稼動取り込みの前にアプローチを検証する必要があります。
- バルクアップロードボリューム:50,000 アセット
- アプローチ:事前署名済みURL (
@adobe/aem-upload)を介した直接バイナリアップロード - バッチパターン:再試行ロジックを使用したバッチアップロード
- バッチサイズ:ドキュメントでは、実稼動環境で10 ~ 50を提案しています
- 同時実行:
withMaxConcurrent()メソッドを使用できます - 認証:サービス資格情報(OAuth S2S / JWT)
解決策 resolution
問題を解決するには、次の手順に従います。
-
バイナリの直接アップロードを使用
- プログラマティックアセットのアップロードに関するチュートリアル および アセットアップロード HTTP API リファレンス に従います。
- ファイルをクラウドストレージに直接アップロードし、AEM JVMの負荷を最小限に抑えるため、大規模な取り込みにはダイレクトバイナリアップロードをお勧めします。
-
バッチサイズと同時実行の設定
-
ドキュメントの説明に従って、 バッチアップロード パターンを使用します。
-
推奨される開始設定:
batchSize: バッチあたり20 ~ 50 ファイルmaxConcurrent: クライアントプロセスごとに5~8個の同時アップロード
-
パイロット結果と観察されたシステム動作に基づいてこれらの値を調整します。
-
-
スループットと処理の監視
- アップロード API自体に対して、1秒あたりのリクエストや1時間あたりのアセットに厳格なハード制限はありません。
- 実際のスループットは、ネットワーク帯域幅とクライアントの同時実行によって制御されます。
- アップロード後の処理(サムネール、メタデータ、Dynamic Mediaなど) Asset Compute microservicesによって処理されます。 一般的な処理速度は、1時間あたり5,000~9,000 アセットです。
- 5万点のアセットについては、標準的な条件で数から数時間で処理が完了するはずです。
-
試験運用と監視
- 1,000~2,000個のアセットを含む試験運用を実行して、設定を検証し、タイムアウト、HTTP 413 (ペイロードが大きすぎる)、HTTP 429 (リクエストが多すぎる)などのエラーを監視します。
- AEMで処理時間と*Processing…*バナーを監視します。
- 必要に応じてバッチサイズと同時視聴数を調整し、スロットリングをトリガーすることなくスループットを最適化します。
-
認証と権限
- 必要なアップロード権限を持つアカウントでサービス資格情報(OAuth S2S / JWT)を使用します。
-
適切なアップロードのスケジュール
- このボリュームに特別な環境のスケールアップは必要ありません。
- 処理スループットを最大化するために、オフピーク時間中にアップロードを実行することを検討してください。
原因:
ダイレクトバイナリアップロード方式は、大量の取り込み用に設計されており、クラウドストレージとマイクロサービスを活用して拡張性を高めます。 スループットは、アップロード API自体ではなく、アップロード後の処理能力によって主に制限されます。
recommendation-more-help
experience-cloud-kcs-help-kbarticles