Veröffentlichungsdatum: 10. Oktober 2018
Änderungsdatum: 26. Februar 2021
weblication cms projekt cache löschen ereignisse async
Über Projektereignisse wird bei bestimmten Aktionen (z.B. Speichern, Hochladen, etc.) der Projekt-Cache gelöscht, um sicherzustellen, daß die Informationen im Projekt-Cache neu generiert werden und aktuell sind.
Der Aufruf der Funktion über das Projektereignis erfolgt in aktuellen CMS-Versionen standardmässig über einen asynchronen Aufruf über PHP. Die Aktion (z.B. Speichern einer Seite) muss somit nicht warten, bis die andere Aktion (Projekt-Cache löschen) abgeschlossen ist, was mehr Performance bedeutet.
Sofern ein Webserver asynchrone Aufrufe via PHP nicht unterstützt (ab CMS 13.x in den Weblication® Serverinformationen ersichtlich), funktionieren Aufrufe über Ereignisse (wie z.B. Projekt-Cache löschen, URL dem Suchindex hinzufügen (addUrlToIndex), etc.) nicht. Geben Sie in diesen Fällen der Funktion den entsprechenden Parameter mit, welcher den Aufruf nicht asynchron vornimmt.
// ...
$wSearch->addUrlToIndex($eventData['filePath'], false);
//...
wCache::clearCacheProject($eventData['projectPath'], array('allowAsync' => false));
In den weiterführenden Links finden Sie zudem im Artikel zu "Asynchrone Aufrufe" weitere Lösungsmöglichkeiten.