最近、Alfresco での Solr インデックス作成の結果整合性に起因する問題に気付きました。問題は、ファイルがアップロードされた直後に実行される検索でファイルが表示されないことです。構成プロパティを調べて、パフォーマンスを改善できるかどうか (待ち時間を短縮できるかどうか) を確認しました。
プロパティを変更するalfresco.cron
と役立つように見えるため、Solr はデフォルトの 15 秒ではなく、より頻繁にリポジトリの更新をチェックします。alfresco.cron=0/15 * * * * ? *
ただし、alfresco.lag=1000
プロパティが何をするのか、その目的が何なのかはわかりません。Alfresco wikiには次のように書かれています。
各「トラック」は、開始時刻まで実行されます - このラグを差し引いたもの
私には意味がありません-「トラック」とは何ですか?また、開始時まで何かを実行するにはどうすればよいですか?
The Alfresco 4.1 docsおよびこの記事には次のように書かれています。
これは、トラッカー プロパティを指定して、Solr 全文インデックスが現在リポジトリの更新から遅れている時間 (秒単位) を設定します。
と
Solr インデックスはバックグラウンドで更新されます。これは、この Solr インデックスが現在リポジトリの更新から遅れている時間 (秒単位) です。
しかし、私は賢明ではありません-これは、Solrがリポジトリから1000秒遅れる可能性があることを意味しますか(さらに、cron間隔により15秒)? もしそうなら、これは大きな遅れのようです - 私は最大数秒を望んでいます.
調整の実際の効果は何ですかalfresco.lag
(たとえば、大幅に減らしたりゼロに設定した場合はどうなりますか)? Alfresco ドキュメントの例の値は 0 秒ですが、構成ファイルのデフォルトは 1000 です。このプロパティを調整することのトレードオフは何ですか?
更新:org.alfresco.solr.tracker.CoreTracker
次のコードがあるため、単位が誤って文書化されており、実際には秒ではなくミリ秒であると思われます。
long startTime = System.currentTimeMillis();
state.timeToStopIndexing = startTime - lag;