Fessでクロール設定が100件を超えるときに確認する上限

Fessに多数のクロール設定を登録している場合、設定が有効でも実行対象へ読み込まれないことがあります。開発版では、読み込み件数の上限に達したことを警告する変更がマージされました。設定名にはpageが含まれますが、管理画面のページサイズではなく、クロール対象として読み込む設定の総数を制限します。

対応状況と初期値

2026年10月13日時点の最新公開リリースはFess 15.8.0です。この記事は15.9開発版の実装と文書修正を説明し、警告の利用には修正を含むビルドが必要です。

fess_config.propertiesの初期値は次のとおりです。

page.web.config.max.fetch.size=100
page.file.config.max.fetch.size=100
page.data.config.max.fetch.size=100

ウェブ、ファイルシステム、データストアで、それぞれ最大100件を読み込みます。対象の設定は並び順、次に名前の昇順で選ばれ、上限を超えた分はクロールされません。今回の変更で上限や対象の選び方が自動で変わるわけではありません。

警告は取りこぼしの可能性を示す

読み込めた件数が上限に達すると、該当する設定名と上限値をWARNで知らせます。実際に101件目が存在するかまで調べる処理ではないため、ちょうど100件でも警告の対象になり得ます。

設定IDで対象を絞り、要求したID数が上限以下の場合には警告しません。また同じ設定キーの警告を毎回繰り返す仕組みではありません。警告が出続けないことを、全設定が実行された証拠にしないでください。

必要件数に合わせて上限を設定する

例えばウェブ設定が150件ある場合は、ウェブ側の上限を必要件数以上へ変更します。200は例で、推奨値として固定するものではありません。

page.web.config.max.fetch.size=200

RPM・DEB版では/etc/fess/fess_config.properties、ZIP版ではapp/WEB-INF/classes/fess_config.propertiesを確認し、変更後にFessを再起動します。ZIP版ではFESS_CONF_PATHへ同名ファイルを置くだけではWebアプリケーションの設定を上書きできない点にも注意してください。

再起動後に対象ジョブを実行し、上限に関するログと各設定のクロール結果を確認します。ファイル・データストアも同様に、実際の登録数に応じてそれぞれの上限を設定します。

同時実行数と処理速度は別に調整する

読み込み件数を増やしても、全部が同時に始まるわけではありません。「システム > 全般」の「同時クローラー設定」は初期値5で、ウェブとファイルシステムを合わせた実行数と、データストアの実行数にそれぞれ適用されます。設定の開始は各系列で5秒間隔です。

さらにウェブクロールの初期値は1スレッド、リクエスト間隔10000ミリ秒です。待機時間だけで考えても1時間あたり最大約360URLとなり、取得・解析の時間が加わると少なくなります。読み込み上限、同時実行設定数、各設定のスレッド数と間隔を区別し、対象サイトと検索エンジンへの負荷を見ながら調整してください。

関連PR

コメントを残す

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です