Adobe Experience Manager 6.5.24でのJava ヒープとMetaspace OutOfMemoryの問題のトラブルシューティング

AEM 6.5.24のオーサーインスタンスとパブリッシャーインスタンスでJava ヒープとMetaspace OutOfMemory エラーを診断および解決する方法について説明します。

説明 description

環境

Adobe Experience Manager(AEM) 6.5.24 オーサーインスタンスとパブリッシャインスタンス。任意のデプロイメント環境(開発、ステージング、実稼動環境)に適用されます。

症状

  • Java ヒープおよび/またはメタスペースの使用率が時間の経過とともに大幅に増加します。

  • OutOfMemoryError条件が繰り返され、インスタンスが応答しなくなったり、クラッシュしたりします。

  • エラーログには、次のようなメッセージが含まれます。

    • java.lang.OutOfMemoryError: Java ヒープ領域
    • org.osgi.framework.ServiceException: サービス ファクトリの例外:Java ヒープ領域
  • リソース解決エラーに関連する頻繁なエラーメッセージ(以下を参照)。

    • 存在しないページパスを解決する際に、実際のパスエラーのリソースが見つかりません
    • モデル適応エラー(例:モデルがnullで、ページが見つかりません)

原因

OutOfMemory条件は、主に、リソース解決エラーの繰り返しとアプリケーションレベルの処理に関連するJava ヒープの枯渇が原因です。 AEM 6.5.24では、Metaspace固有の製品欠陥は確認されていません。 根本原因を分離して修復するには、ヒープダンプとアプリケーションコードのさらなる分析が必要です。

解決策 resolution

問題を解決するには、次の手順に従います。

  1. 診断データの収集:

    • OutOfMemoryErrorの時点で、オーサーインスタンスとパブリッシャーインスタンスの両方からエラーログ、ヒープダンプ、スレッドダンプを収集します。

    • ガベージコレクション(GC)ログを確認して、MetaspaceまたはJava ヒープの枯渇の証拠を確認します。

  2. ヒープダンプの分析:

    • Eclipse Memory Analyzer (MAT) などのツールを使用して、保持されるヒープサイズが最も大きいオブジェクトまたはクラスを識別します。

    • 異常なオブジェクトの保持、メモリリーク、過度のリソース解決アクティビティを探します。

  3. 申請コードを確認:

    • カスタムコード、特にリソース解決とモデル適応に関わるコンポーネントを調査します。

    • メモリの過剰な保持や繰り返しエラーの原因となるパターンに対処します。

  4. 既知の問題を確認します。

    • リソース リスナーまたはセッション保持に関連する既知の問題について、使用中のorg.apache.sling.jcr.resourceのバージョンを確認してください。

    • AEM 6.5.24のメモリの問題に対処するホットフィックスまたはサービスパックについては、Adobe AEM リリースノート ​およびExperience League フォーラム(例:AEM Experience League コミュニティ ​)を参照してください。

  5. リソース解決の最適化:

    • 存在しないパスに対するリソース解決の不必要な試行を減らします。

    • null モデルの適応を適切に処理し、過剰なエラーログとメモリの使用を回避します。

  6. JVM設定の監視と調整:

    • ワークロードに合わせて、JVM メタスペースとヒープサイズのパラメーターを確認し、調整します。

    • コードと設定の変更を適用した後のメモリの傾向を監視します。

これらの手順を完了した後、メモリ使用率が安定し、OutOfMemory エラーが発生しなくなったことを確認します。

関連トピックス

recommendation-more-help
experience-cloud-kcs-help-kbarticles