Ajuster la vitesse de l'indexeur
Par défaut, l'indexeur de SearchWP est configuré pour fonctionner aussi vite que possible sans ralentir votre site. Une partie de cette configuration implique des valeurs par défaut raisonnables et une surveillance du système (par exemple, l'utilisation du CPU/RAM) le cas échéant.
Si vous êtes convaincu que votre serveur est plus performant que la moyenne, vous pouvez utiliser un certain nombre de hooks pour forcer l'indexeur de SearchWP à être plus agressif.
Note : il existe une case à cocher intégrée dans l'onglet Avancé de l'écran des paramètres de SearchWP qui diminue l'agressivité de l'indexeur. Cet article explique comment rendre l'indexeur plus agressif.
⚠️ Note : Procédez avec prudence ! ⚠️
Apporter ces modifications peut entraîner une consommation totale des ressources du serveur par le processus d'indexation, interrompant le trafic des visiteurs.
Restreindre les attributs sources du moteur
Avant d'expérimenter directement avec le processus d'indexation, il est utile d'évaluer la configuration de votre/vos moteur(s). Plus l'indexeur a de travail à faire, plus cela prendra de temps.
Par exemple : ajouter N'importe quelle clé méta pour indexer tous les champs personnalisés est pratique, mais cela signifie également que toutes les métadonnées seront indexées, y compris le contenu que vous avez en tête, mais aussi les métadonnées implémentées/utilisées par tout le code de votre site. Très souvent, les métadonnées sont utilisées pour stocker des données/contenus complètement non pertinents pour la recherche, il est donc utile de les examiner.
De plus, s'il existe des règles que vous pouvez appliquer pour limiter le travail de l'indexeur, cela vaudra la peine d'être considéré. Moins SearchWP a de contenu à traiter pour construire son index, plus l'index se construira rapidement.
Augmenter la taille des lots de l'indexeur
L'indexeur de SearchWP fonctionne en traitant les entrées par lots. Cela évite les problèmes de délai d'attente et de mémoire potentiels. Augmenter le nombre d'entrées traitées par lot peut aider l'indexeur de SearchWP à fonctionner un peu plus rapidement.
Il existe un hook disponible pour contrôler la taille des lots utilisée par l'indexeur de SearchWP : searchwp\indexer\batch_size
Vous pouvez expérimenter avec cette taille de lot pour que SearchWP traite plus de données par itération de l'indexeur. Notez qu'augmenter la taille du lot trop loin peut entraîner l'échec du processus de l'indexeur.
Désactiver la limitation de l'indexeur
SearchWP surveillera l'utilisation des ressources du serveur lorsque cela est possible. Il existe quelques hooks que vous pouvez utiliser pour ajuster la façon dont SearchWP réagit à la charge CPU actuelle pendant l'indexation.
- Désactiver complètement la surveillance de la charge
- Vous pouvez désactiver complètement la surveillance de la charge avec le hook
searchwp\background_process\load_monitoring. - Ajuster le maximum de charge
- Lorsque SearchWP surveille la charge CPU, il vérifie si un seuil de charge CPU maximum a été dépassé. La valeur par défaut pour cette charge est de
2, mais si votre serveur a de nombreux cœurs, cette valeur par défaut peut être trop agressive. Vous pouvez ajuster le seuil avec le hooksearchwp\background_process\load_maximum. - Ajuster le temps de limitation lorsque le seuil de charge CPU est dépassé
- Lorsque SearchWP a détecté que la charge CPU est trop élevée, il injectera un délai d'attente en secondes. Si vous souhaitez personnaliser la durée de ce délai d'attente, vous pouvez utiliser le hook
searchwp\background_process\load_throttle.
Procédez avec prudence !
Veuillez garder à l'esprit que l'expérimentation avec ces hooks peut entraîner la consommation complète de votre serveur par le processus d'indexation de SearchWP et potentiellement interrompre le trafic des visiteurs du site pendant l'exécution de l'indexeur. Il est recommandé d'ajuster progressivement les valeurs de retour pour ces hooks.

