Passen Sie die Geschwindigkeit des Indexierers an
Standardmäßig ist der Indexierer von SearchWP so konfiguriert, dass er so schnell wie möglich läuft, ohne Ihre Website zu verlangsamen. Teil dieser Konfiguration sind sinnvolle Standardwerte und Systemüberwachung (z. B. CPU/RAM-Auslastung), sofern zutreffend.
Wenn Sie sicher sind, dass Ihr Server leistungsfähiger ist als die meisten, gibt es eine Reihe von Hooks, mit denen Sie den Indexierer von SearchWP aggressiver machen können.
Hinweis: Auf der Registerkarte "Erweitert" des Einstellungsbildschirms von SearchWP gibt es ein Kontrollkästchen, das die Aggressivität des Indexierers verringert. Dieser Artikel erklärt, wie Sie den Indexierer aggressiver machen.
⚠️ Hinweis: Gehen Sie mit Vorsicht vor! ⚠️
Diese Änderungen können dazu führen, dass Serverressourcen durch den Indexierungsprozess vollständig ausgelastet werden, was den Besucher-Traffic unterbricht.
Attribute der Engine-Quelle einschränken
Bevor Sie mit dem Indexierungsprozess direkt experimentieren, lohnt es sich, die Konfiguration Ihrer Engine(s) zu überprüfen. Je mehr Arbeit der Indexierer leisten muss, desto länger dauert es.
Zum Beispiel: Das Hinzufügen von Beliebige Metaschlüssel zum Indexieren aller benutzerdefinierten Felder ist praktisch, bedeutet aber auch, dass alle Post-Metadaten indiziert werden, einschließlich des Inhalts, den Sie im Sinn haben, aber auch der von allem Code auf Ihrer Website implementierten/verwendeten Metadaten. Sehr oft werden Metadaten zum Speichern von Daten/Inhalten verwendet, die für die Suche völlig irrelevant sind, daher lohnt es sich, dies zu überprüfen.
Darüber hinaus sollten Sie prüfen, ob es Regeln gibt, die Sie anwenden können, um die Arbeit des Indexierers zu begrenzen. Je weniger Inhalte SearchWP verarbeiten muss, um seinen Index zu erstellen, desto schneller wird der Index erstellt.
Erhöhen der Indexierer-Batchgröße
Der Indexierer von SearchWP läuft, indem er Einträge zum Indexieren in Stapeln verarbeitet. Dies vermeidet Timeouts und potenzielle Speicherprobleme. Die Erhöhung der Anzahl der pro Stapel verarbeiteten Einträge kann dazu beitragen, dass der Indexierer von SearchWP etwas schneller läuft.
Es gibt einen Hook, um die von SearchWP's Indexierer verwendete Stapelgröße zu steuern: searchwp\indexer\batch_size
Sie können mit dieser Stapelgröße experimentieren, um mehr Daten pro Indexierer-Iteration von SearchWP verarbeiten zu lassen. Beachten Sie, dass eine zu hohe Stapelgröße zu einem Fehlschlag des Indexiererprozesses führen kann.
Indexierer-Drosselung deaktivieren
SearchWP überwacht nach Möglichkeit die Serverressourcenauslastung. Es gibt einige Hooks, mit denen Sie anpassen können, wie SearchWP auf die aktuelle CPU-Last während der Indexierung reagiert.
- Lastüberwachung vollständig deaktivieren
- Sie können die Lastüberwachung vollständig mit dem Hook
searchwp\background_process\load_monitoringdeaktivieren. - Maximale Last anpassen
- Wenn SearchWP die CPU-Last überwacht, prüft es, ob ein maximaler CPU-Lastschwellenwert überschritten wurde. Der Standardwert für diese Last ist
2, aber wenn Ihr Server viele Kerne hat, kann dieser Standardwert zu aggressiv sein. Sie können den Schwellenwert mit dem Hooksearchwp\background_process\load_maximumanpassen. - Drosselungszeit anpassen, wenn der CPU-Lastschwellenwert überschritten wird
- Wenn SearchWP erkennt, dass die CPU-Auslastung zu hoch ist, wird ein Timeout in Sekunden eingefügt. Wenn Sie die Dauer dieses Timeouts anpassen möchten, können Sie den Hook
searchwp\background_process\load_throttleverwenden.
Vorgehensweise mit Vorsicht!
Bitte beachten Sie, dass das Experimentieren mit diesen Hooks dazu führen kann, dass Ihr Server vollständig vom Indizierungsprozess von SearchWP beansprucht wird und möglicherweise den Website-Besucher-Traffic unterbricht, während der Indexer läuft. Eine schrittweise Anpassung der Rückgabewerte für diese Hooks wird empfohlen.

