Version 1.5.5 is a recommended update for everyone as it improves performance in a number of areas. Most significantly you should see faster index times both during initial index builds (and after purges) in addition to delta updates (e.g. when you edit content).
Another existing addition in 1.5.5 is that SearchWP will now auto-throttle the indexer (using one metric) based on the server load in real time. This feature is available on Linux servers only, but it will automatically scale back the indexer if your load reaches a set threshold. Out of the box the threshold is 1
but you can easily update that with the searchwp_load_maximum
filter like so:
<?php
function my_searchwp_load_max() {
return 0.5;
}
add_filter( 'searchwp_load_maximum', 'my_searchwp_load_max' );
If your server load ever breaches that threshold, SearchWP will automatically scale back the indexer to be less aggressive and in doing so reduce the strain on your server. Please note that a less aggressive indexer results in a longer wait for the indexing to take place.
If you don’t want to bother with server loads (or you can’t because you’re on a Windows server) you can always utilize the searchwp_indexer_throttle
filter to force the indexer to wait N
seconds in between passes, effectively reducing the aggressiveness of the indexer by hand, across the board.
Full changelog:
- [Improvement] Better performance on a number of queries throughout
- [Improvement] SearchWP will now monitor load averages (on Linux machines) and auto-throttle when loads get too high
- [Change] The default indexer pass timeout (throttle) is now 1 second
- [Fix] Fixed an issue where Media may not be indexed on upload
- [Fix] Fixed an issue where terms in file names may be counted twice when indexing
- [Improvement] Many more logging messages included, logs now include internal process identification
- [Fix] Fixed an issue with non-blocking requests and their associated timeouts potentially stalling the indexing process