Confluence Data Center のドキュメント変換
ページにファイルを挿入すると (Word ドキュメントや Excel スプレッドシートなど)、Confluence はページ内、プレビュー、一部のマクロでインライン表示できる形式に、コンテンツを変換します。これには非常に多くのメモリや CPU を消費するため、非常に複雑なファイルを処理する際にはメモリ不足エラーが発生することが確認されています。
Confluence Data Center では、Confluence が管理する独立したプロセス プールである外部プロセス プールで変換を処理することで、影響を最小限に抑えることができます。これらのプロセス (サンドボックス) はクラッシュまたは終了する可能性がありますが、Confluence アプリケーションに影響を与えることなく、Confluence によって自動的に再起動されます。
たとえば、非常に複雑なファイルを挿入し、プロセスがクラッシュまたは終了した場合、サムネイルの生成は失敗します。これが発生した場合、ページではプレースホルダー サムネイルが使用され、ファイル プレビューにはダウンロード オプションが表示されます。Confluence Data Center は、失敗したファイルに対してサムネイルの再生成を試行しません。複雑なファイルの例として、50 の埋め込み Excel グラフが含まれる PowerPoint プレゼンテーションなどがあります。ほとんどのファイルは問題なく処理されます。
次の変換には、外部プロセス プールが使用されます。
- 画像やドキュメントをページに挿入したり、プレビューで見たりする際のサムネイル生成。
- Office Word や Office Excel のマクロを使って表示する Word や Office のドキュメントの HTML 変換。
外部プロセス プールは Confluence Data Center でのみ利用できます。
Confluence Server では、サムネイル生成と HTML 変換は Confluence によって行われるため、このページの情報は適用されません。
外部プロセス プールを設定する
ほとんどの場合は既定値が適していますが、システム管理者はシステム プロパティを使用して動作を変更できます。たとえば、プールのサイズ (利用可能なプロセスの数) を増やしたり、プロセスが終了するまでの時間を増やしたりすることができます。変更が必要な場合がある 3 つの主なプロパティは次のとおりです。
- conversion.sandbox.pool.size
プール内のプロセス (サンドボックス) の数を増やすには、このプロパティを使用します。追加するそれぞれのプロセスについて、各ノードで追加メモリを許可する必要があります。 - conversion.sandbox.memory.limit.megabytes
プール内のサムネイル生成プロセスが消費できるメモリの量を制限するには、このプロパティを使用します。 document.conversion.sandbox.memory.requirement.megabytes
プール内の各 HTML 変換プロセスが消費できるメモリの量を制限するには、このプロパティを使用します。- document.conversion.sandbox.request.time.limit.secs
サンドボックスがプロセスを終了する前に、変換プロセスが完了するのを待機する時間 (秒単位) を変更するには、このプロパティを使用します。
これらのプロパティの完全な説明と、サンドボックスの微調整や完全な無効化に使用できるいくつかの追加プロパティについては、「認証済みのシステム プロパティ」を参照してください。
サムネイル生成に失敗したファイルの再試行
Confluence は、サムネイル生成に失敗した添付ファイルでの再試行は行いません。添付されたファイルをエディターに再度挿入しても、プロセスはトリガーされません。
リクエスト時間の上限を増やした後などにサムネイルを再度生成したい場合は、ファイルを再度アップロードして、ページに再度挿入する必要があります。
ドキュメントの変換に影響するその他のシステム プロパティ
このページの一覧に記載されているシステム プロパティは、特に外部プロセス プールに適用されます。ただし、Confluence Server と Confluence Data Center の両方に適用されるいくつかの追加プロパティがあります。
- confluence.document.conversion.imaging.enabled.tif
TIFF ファイルのドキュメント変換を有効化するには、このプロパティを使用します。デフォルトでは無効になっています。
- confluence.document.conversion.imaging.enabled.psd
Photoshop PSD ファイルのドキュメント変換を有効化するには、このプロパティを使用します。デフォルトでは無効になっています。
- confluence.document.conversion.imaging.convert.timeout
複雑な画像ファイル (ICO、EMF、WMF など) のドキュメント変換を実行するときに適用されるデフォルトの 30 秒の制限を変更するには、このプロパティを使用します。
- confluence.document.conversion.slides.convert.timeout
複雑なプレゼンテーション ファイル (PPT、PPTX など) のドキュメント変換を実行するときに適用されるデフォルトの 30 秒の制限を変更するには、このプロパティを使用します。
これらのプロパティの既定値を上書きするには、conversion.sandbox.java.options
システム プロパティを使用して、外部プロセス プールを構成する JVM にプロパティを渡す必要があります。
document.conversion.sandbox.request.time.limit.secs
システム プロパティを使用して外部プロセス プールでサムネイルを生成する際のタイムアウトを増やす場合は、上記のシステム プロパティを使用して、複雑な画像ファイルまたはプレゼンテーションのタイムアウトを変更することもできます。既定のままにして、これらのタイプのファイルの変換をより早く失敗させることもできます。