アセットパフォーマンスガイド assets-performance-guide
デジタルアセット管理(DAM)は、パフォーマンスが重要な場合によく使用されます。ただし、通常の DAM の設定には、パフォーマンスに影響を与える可能性のあるいくつかのハードウェアおよびソフトウェアコンポーネントが含まれています。このドキュメントでは、次の情報について説明します。
- システム管理者が新しいデジタルアセット管理の設定で最適なハードウェアサイジングを決定する際に役立つ情報
- ソフトウェア開発者がパフォーマンスの問題が発生した DAM インスタンスをトラブルシューティングする際に参照する情報
パフォーマンスの問題 performance-issues
デジタルアセット管理でパフォーマンスの低下が発生すると、インタラクティブパフォーマンス、アセット処理、ダウンロード速度という 3 点について、ユーザーエクスペリエンスが影響を受ける場合があります。パフォーマンスを向上させるには、調査対象となるパフォーマンスを適切に測定し、ターゲットメトリックを確立することが重要です。
1.インタラクティブな検索と参照 ユーザーは、アセットの検索や DAM Finder の参照を行って、応答時間が遅くなったり、検索結果が即時に表示されないといった問題点を指摘します。これは、インタラクティブパフォーマンスに関する問題です。
インタラクティブパフォーマンスは、ページ応答時間の観点から測定されます。ページ応答時間とは、HTTP リクエストを受信してから、HTTP 応答を閉じるまでにかかる時間であり、リクエストのログファイルを調べることで確認できます。標準のターゲットパフォーマンスでは、ページ応答時間は 2 秒未満です。
2.アセット処理 アセット処理の問題とは、ユーザーがアセットをアップロードするときに、アセットが変換されて Adobe Experience Manager(AEM)DAM に取り込まれるまでに数分かかることを指します。
アセット処理のパフォーマンスは、ワークフロープロセスが完了するまでの平均時間の観点から測定されます。ワークフロープロセスが完了するまでの時間とは、アセットの更新ワークフロープロセスを呼び出してから、そのプロセスが完了するまでにかかる時間であり、ワークフローレポートのユーザーインターフェイスを調べることで確認できます。標準のターゲットパフォーマンスは、処理されるアセットのサイズと種類、およびレンダリングの数によって異なります。ターゲットパフォーマンスの例を次に示します。
- 標準のレンディションを使用した 1280x1280 ピクセルよりも小さい画像の場合、10 秒未満
- 標準のレンダリングを使用した 100 MB よりも小さい画像の場合、1 分未満
- 1 分よりも短い HD ビデオクリップの場合、5 分未満
3.ダウンロード速度 スループットの問題とは、AEM DAM からのダウンロードに時間がかかり、DAM Admin または DAM Finder を閲覧したときにサムネールがすぐに表示されないことを指します。
スループットのパフォーマンスは、ダウンロードレート(1 秒あたりのキロビット数単位)の観点から測定されます。標準のターゲットパフォーマンスは、100 件の同時ダウンロードで 300 kbps です。
4. アセット処理パフォーマンスに影響を及ぼす要因
アセットの処理に必要となるハードウェアを評価するには、次の側面を考慮する必要があります。
- 画像の解像度(ピクセル単位)
- AEM のプロセスに割り当てられるヒープ
画像に含まれるピクセル数によって処理時間が決まり、ピクセル数が多いほど、処理に時間がかかります。
画像の種類、圧縮率または画像が格納されているファイルに関連するサイズは、パフォーマンス全体に対しては目立った影響を与えません。
ヒープは、最も重要な制限要因として見なされています。アセットが利用可能な空きメモリのサイズを超えると、処理のパフォーマンスが急速に低下します。
DAM プロセスは、大量データの並行実行に優れています。アセットをマルチコアプロセッサーを使用してバッチでアップロードすることで、アセットあたりの絶対的な実行時間が短縮します。
5. アセット処理を実行するためのハードウェアの要件の評価
デジタルアセットを大規模に処理するには、最適化されたハードウェアリソースが必要になります。最も関連する要因は、画像サイズと、処理された画像のピーク時のスループットです。
16 GB 以上のヒープを割り当て、Camera Raw パッケージを使用して RAW 画像を取り込むように、DAM アセット更新ワークフローを設定します。
システムについて understanding-the-system
標準的な DAM 設定は、ロードバランサーを経由して DAM へアクセスするエンドユーザーから構成されます。DAM インスタンスは、クラスター化設定の一部となる場合があります。このクラスター化設定では、各 DAM インスタンスが物理マシンまたは仮想マシン上の Java 仮想マシンプロセスで実行されます。DAM ストレージは、単一マシン設定の場合は RAID ディスクによって提供され、クラスター化設定の場合は管理されたネットワーク接続ストレージによって提供されます。
以下の凡例では、パフォーマンスの落とし穴となりうる部分を、適宜、解決策とともに説明します。
エンドユーザーへのネットワーク接続 ネットワーク接続が遅いと、スループットの問題が発生する場合がありますが、まれに遅延の問題も発生する場合があります。ISP からの接続が低速な場合があります(特にイントラネットの場合)。これは、ネットワークトポロジが適切ではないことを示しています。
一時ファイルシステム 検索インデックスはローカルディスクに保存されているため、ローカルファイルシステムが遅いと、特に検索時にインタラクティブパフォーマンスの問題が発生する可能性があります。コマンドラインプロセスが使用中である場合、アセット処理の問題が発生する可能性もあります。
AEM DAM ファインダー 検索で発生することが多いインタラクティブパフォーマンスの問題は、高い CPU 使用率が原因となります。CPU 使用率が高くなるのは、同一のインスタンス上に、多くの同時ユーザーまたは CPU を利用する他のプロセスが存在するからです。仮想マシンから専用マシンに移行し、マシン上で他のサービスが実行されないようにすることで、パフォーマンスを向上させることができます。アセット処理や多数の同時ユーザーが原因で CPU 負荷が高くなる場合は、クラスターノードを追加することをお勧めします。
AEM DAM ワークフロー アセットが取り込まれるときに、長時間実行されるワークフロープロセスが原因で、アセット処理のパフォーマンスの問題が発生します。処理中のアセットのタイプによっては、これは CPU の過剰使用を示している可能性があります。システム上で実行されている他のプロセスの数を減らし、クラスターノードを追加することで、使用可能な CPU の数を増やすことをお勧めします。
NAS 接続性 NAS へのネットワーク接続が低速だと、インタラクティブパフォーマンスの問題が発生します。これは、ネットワーク遅延が原因で、アセット処理中の新しいノードへのアクセス速度が遅くなるからです。また、ネットワークスループットが遅いと、レンディションの読み込みと保存が遅くなるため、スループットだけでなくアセットの処理パフォーマンスにも悪影響を及ぼします。
ネットワークトポロジや、他のサービスによる NAS の過剰使用が原因で、NAS での遅延やスループットの問題が発生します。
ネットワーク接続ストレージ ネットワーク接続ストレージシステムの過剰使用が原因で、様々な問題が発生する可能性があります。
- ディスク容量の不足はよく発生する問題ですが、DAM プロジェクトのサイズを適切に設定することで回避できます。
- ディスク待ち時間が長くなると、CRX のアクセスに時間がかかるようになり、インタラクティブパフォーマンスの問題が発生する場合があります。
- ディスクのスループットが低いと、CQ5 DAM のパフォーマンスが低下する場合があります。
パフォーマンスのテスト testing-for-performance
すべての DAM プロジェクトでボトルネックをすばやく特定し解決できるように、パフォーマンステストの体制を必ず確立してください。これを行うには、次のチェックポイントを考慮します。
- JMeter を使用したエンドツーエンドなパフォーマンステスト - サンプルの検索および参照セッションをシミュレートして、インタラクティブパフォーマンスの問題を検出します。
- JMeter を使用したスループットと待ち時間のテスト - クライアントコンピューター上で実行して、トポロジに関連する問題がないことを確認します。
- 標準化されたアセット処理のテスト - 少数のサンプルアセットを取り込んで、処理時間を測定します。これには、外部ワークフローの統合を含める必要があります。
- それぞれのクラスタノードの CPU、ディスク、メモリ使用率を監視します。
- CRX の読み取りと書き込みのパフォーマンス診断。処理に関連しない問題を特定します。
- DAM クラスターから NAS へのネットワーク遅延とスループットを監視します。
- 可能であれば、読み取りと書き込みのパフォーマンスおよびディスク待ち時間のテストを NAS に対して直接実行します。
ボトルネックの調整 tweaking-bottlenecks
現時点では、次のパフォーマンスの調整はプロジェクトに適用されています。
- 選択的なレンディション生成:アセット処理ワークフローに条件を追加することによって、必要なレンディションだけを生成します。これにより、コストがかかるレンディションが、限られたアセットに対してのみ生成されるようになります。
- インスタンス間の共有データストア:ディスク容量が不足している場合、このデータストアを利用することで、必要なディスク容量を大幅に減らすことができますが、設定に手間がかかり、データストアの自動クリーンアップが使用できなくなります。