#2442 improve suggest processing
This commit is contained in:
parent
29ce6dd071
commit
1ea921c461
3 changed files with 11 additions and 2 deletions
|
@ -35,6 +35,7 @@ import javax.annotation.PostConstruct;
|
|||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
import org.codelibs.core.lang.StringUtil;
|
||||
import org.codelibs.core.lang.ThreadUtil;
|
||||
import org.codelibs.core.misc.Pair;
|
||||
import org.codelibs.fess.Constants;
|
||||
import org.codelibs.fess.es.client.FessEsClient;
|
||||
|
@ -203,6 +204,8 @@ public class SuggestHelper {
|
|||
|
||||
public void indexFromDocuments(final Consumer<Boolean> success, final Consumer<Throwable> error) {
|
||||
final FessConfig fessConfig = ComponentUtil.getFessConfig();
|
||||
final long interval =fessConfig.getSuggestUpdateRequestIntervalAsInteger().longValue();
|
||||
final SystemHelper systemHelper = ComponentUtil.getSystemHelper();
|
||||
suggester
|
||||
.indexer()
|
||||
.indexFromDocument(
|
||||
|
@ -224,7 +227,10 @@ public class SuggestHelper {
|
|||
reader.addSort(SortBuilders.fieldSort(fessConfig.getIndexFieldClickCount()));
|
||||
reader.addSort(SortBuilders.scoreSort());
|
||||
return reader;
|
||||
}, 2, fessConfig.getSuggestUpdateRequestIntervalAsInteger().longValue()).then(response -> {
|
||||
}, 2, ()->{
|
||||
systemHelper.calibrateCpuLoad();
|
||||
ThreadUtil.sleep(interval);
|
||||
}).then(response -> {
|
||||
refresh();
|
||||
success.accept(true);
|
||||
}).error(t -> error.accept(t));
|
||||
|
|
|
@ -568,6 +568,9 @@ public class SystemHelper {
|
|||
try {
|
||||
final OsProbe osProbe = OsProbe.getInstance();
|
||||
systemCpuPercent = osProbe.getSystemCpuPercent();
|
||||
if(logger.isDebugEnabled()) {
|
||||
logger.debug("Updated System Cpu {}%", systemCpuPercent);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
logger.warn("Failed to get SystemCpuPercent.", e);
|
||||
return 0;
|
||||
|
|
|
@ -747,7 +747,7 @@ suggest.field.contents=_default
|
|||
suggest.field.tags=label
|
||||
suggest.field.roles=role
|
||||
suggest.field.index.contents=content,title
|
||||
suggest.update.request.interval=1
|
||||
suggest.update.request.interval=0
|
||||
suggest.update.contents.limit.num.percentage=50%
|
||||
suggest.update.contents.limit.num=10000
|
||||
suggest.update.contents.limit.doc.size=50000
|
||||
|
|
Loading…
Add table
Reference in a new issue