2

マップに約 500K uris を保持するレポート生成用の xquery があり、データベース内のそれらの存在 ( cts:searchwith cts:document-query) をチェックし、diff を返します。ただし、同時リクエストで同じ E ノードにヒットすると、応答時間が遅くなります。

マップが消費できるメモリ サイズに上限はありますか? いずれにせよ、マップをディスクにスワップできますか?

4

2 に答える 2

2

マップをデータベース自体に xml として保存できますが、使用するにはメモリにロードする必要があります。それらをサーバー フィールドとして格納することもできますが、それでもメモリにロードする必要があります。ただし、500k のエントリでマップを作成するのにかなりの時間がかかる場合は、そうする価値があるかもしれません。一方で、マップが最新であることをどのように追跡しますか?

于 2012-05-03T06:09:04.940 に答える
0

各フォレストが管理サーバーで使用しているメモリの量を確認できます。フォレストに移動し、ステータス タブをクリックして、一番下までスクロールします。「メモリ内サイズ」は、マップされたファイル サイズの合計です。xdmp:forest-statusを使用して、XQuery プログラムでこの情報を収集することもできます。

メモリ消費量は、OS のアドレス空間とその仮想メモリ制限 (利用可能なスワップ空間) によって制限されます。サーバーのメモリ消費量が利用可能な物理メモリを超えた場合、OS はページをディスクにスワップします。これは、パフォーマンスに深刻な影響を与える可能性があります。そのため、OS スワップの使用率を監視して、それが速度低下の原因であるかどうかを確認してください。

于 2012-05-02T14:26:23.040 に答える