インデックス作成の解析中に大きく、壊れているか、または不正な入力は、過剰なメモリまたは CPU を使用します。

最下位の場合、JVM がクラッシュします。

別の JVM プロセスで Tika パーサーを使用します。

このようなケースの保護を改善し、パーサーによるリソースの使用状況の管理を通常に改善するには、別の JVM プロセスで Tika パーサーを実行します。実装は、以下を参照してください。https://issues.apache.org/jira/browse/TIKA-416

この機能を使用すると、個別の JVM プロセスでバイナリドキュメントの完全なテキストインデックスを作成できます。これにより、大きなドキュメント、または不正なドキュメントを解析して発生した問題は、メインの CRX または CQ プロセスに影響を与えません。この機能により、システムの全体的な信頼性と安定性が向上します。これにより、インデックスの問題が適切に分離されます。

この機能は、完全なテキスト抽出に専用のバックグラウンドプロセスのプールを自動的に開始します。

関連するワークスペースまたはリポジトリの設定ファイル(通常は、crx-quickstart/repository/workspaces/crx.default/workspace.xml)に関連する <SearchIndex/> セクション「forkJavaCommand」パラメーターとして特定の Java コマンドを使用して、これらのプロセスを開始します。

この値を設定します。例えば、この機能を有効にする「java -Xmx512m」の値です。

追加のヒント

分岐したテキスト抽出プロセスでは、親プロセスを直接処理できません。ただし、大量の PDF ドキュメントを処理数場合に、特に多くの CPU 時間を消費することがあります。全体的なシステムパフォーマンスの影響を回避、またはコントロールするには、forkJavaCommand の前に「nice」またはそのほかのプラットフォーム固有のコマンドを追加して、分岐抽出プロセスの実行優先度を小さくします。Linux および Windows で推奨される値は、次のとおりです。

  Linux の場合:「nice java -Xmx512m」
  Windows の場合:「cmd /c start /low /wait /b java -Xmx512m」

Windows:

        <SearchIndex class="com.day.crx.query.lucene.LuceneHandler">
<param name="path" value="${wsp.home}/index"/>
<param name="resultFetchSize" value="100"/>
<param name="cacheSize" value="100000" />
<param name="forkJavaCommand" value="cmd /c start /low /wait /b java -Xmx512m"/>
</SearchIndex>

Linux または Unix:

        <SearchIndex class="com.day.crx.query.lucene.LuceneHandler">
<param name="path" value="${wsp.home}/index"/>
<param name="resultFetchSize" value="100"/>
<param name="cacheSize" value="100000" />
<param name="forkJavaCommand" value="nice java -Xmx512m"/>
</SearchIndex>

適用対象

CRX 2.2、hotfixpack >= 2.1.0.9 と設定した CRX 2.1 がインストールされています

注意:

Linux の場合、nicejava コマンドは、CQ ユーザーシェルセッションの Path 変数にアクセス可能である場合にのみ作動します。

Windows では、同様に java コマンド適用され、PATH 変数は、Java の正しいバージョンの bin フォルダが含まれている必要があります。

Java の「パス」変数を設定する方法の詳細については、ここを参照してください。

追加情報

デフォルトでは、CQ と同じ Java プロセスで、この抽出を通知する Tika パーサーは、特定の使用事例の発生時に、特定の症状を導く可能性があります。

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー