Viele Leute meinen, dieses Problem könnte mit dem Blockieren synchroner Hintergrundprozesse zusammenhängen , insbesondere mit schweren Cron-Jobs .
Wenn dies zutrifft, gibt es ein großes Paar von Modulen, die von gielfeldt * in der aktiven Entwicklung sind und dieses Problem möglicherweise beheben oder zumindest Hinweise geben und den Site- Erstellern dabei helfen, bestimmte Schuldige in ihren Fällen zu diagnostizieren und zu behandeln. Beide ersetzen blockierende synchrone Prozesse durch nicht blockierende asynchrone HTTP- oder HTTP-Befehle, und beide bieten relevante Berichte, die störende Prozesse identifizieren können:
- Hintergrundprozess und seine gebündelten Module ermöglichen die asynchrone Verarbeitung der Drupal-Hintergrundprozesswarteschlange, sodass sie nicht blockiert werden. Dies könnte das Problem beenden. Mit dem Apache Server-Modul für Hintergrundprozesse in der neuesten Version gibt es auch einen grundlegenden, aber verbesserten UI-Bericht mit Funktionen zum Überwachen, Entsperren und Überprüfen der Startzeiten und des Fortschritts dieser Prozesse. Dies könnte den Problemprozess identifizieren.
- Ultimate Cron baut auf dem Hintergrundprozess auf, damit von Crons ausgelöste Aufgaben ihre eigenen separaten asynchronen Module haben, von denen jedes in einer Benutzeroberfläche überwacht und gestoppt werden kann. Es ist nicht nur eine hervorragende Lösung, um leistungsstarke Aufgaben von regelmäßigen Bereinigungen mit geringem Aufwand zu trennen, sondern bietet Ihnen auch einen Bericht mit nützlichen Informationen, z. usw. Dies könnte auch das Blockieren von und / oder Identifizieren von Problemprozessen beseitigen.
Beide sind sowieso sehr nützliche Module; Für dieses Problem können sie verwendet werden, um die (sehr plausibel klingende) Theorie zu testen, dass die Blockierungen durch synchrone Blockierungsprozesse oder Cron-Läufe verursacht werden. Möglicherweise könnten sie das Problem lösen, indem sie diese nicht synchron, sondern asynchron ausführen, und sie könnten möglicherweise Hinweise darauf geben, welche spezifischen Prozesse den Stillstand verursacht haben. (Seien Sie gewarnt, dass ihre Dokumentation noch in Arbeit ist ...
Wenn sie jedoch nicht so konfiguriert werden können, dass sie helfen, bedeutet dies, dass das Problem mehr ist als nur synchrone Hintergrundprozesse. FWIW, ich hatte noch nie ein bestimmtes Problem auf einer Site, seitdem diese Module ordnungsgemäß funktionieren (noch - berühren Sie Holz) -, aber ich habe es auf meinen Sites zuvor sowie auf Live-Drupal-Sites in freier Wildbahn gesehen.
Beachten Sie auch die anderen Plug-in-Module, die sich derzeit in der Entwicklung befinden - z. B. in komplexen Fällen mit hoher Intensität, kann Ultimate Cron Queue Scaler , der eine schwellenbasierte Drosselung ermöglicht, dazu beitragen, cron-bezogene Leistungsprobleme zu reduzieren.
* keine Zugehörigkeit, ich bin nur ein sehr beeindruckter Benutzer ihrer Arbeit