Evo_nginx_boost mała aktualizacja
Na prośbę użytkowników zmieniliśmy sposób usuwania cache po wykonaniu żądania typu POST. Do tej pory usuwaliśmy cache dla całej strony z której przyszedł POST. Wyobraźmy sobie sytuację w której mamy bardzo duże archiwum newsów. Każdy news zapisany do memcache miał czas wygaśnięcia ustawiony na 24h i więcej. Jeśli pojawił się komentarz pod dowolnym rekordem, memcache był czyszczony dla wszystkich rekordów. Rozwiązanie to może czasem się przydać ale dla serwisu newsowego, który ma kilkanaście tysięcy rekordów powoduje niepotrzebne uruchamianie CMS TYPO3.
Podczas instalacji wtyczki pojawiła się nowa opcja useUrlPrefixClear:
#class.tx_evo_nginx_boost.php line 212 if ($this->conf['useUrlPrefixClear']) $this->clearUrlPrefixCache(); else $this->clearPageCache($pObj->id);
Jeśli ustawimy useUrlPrefixClear na wartość true, każdy POST spowoduje usuwanie memcache dla stron zaczynających się od urla, z którego wyszło żądanie np: jeśli wyślemy POSTa z
www.mysite.com/mysubpage/article1/
memcache zostanie usunięty dla
www.mysite.com/mysubpage/article1/
www.mysite.com/mysubpage/article1/subarticle1
www.mysite.com/mysubpage/article1/subarticle2
www.mysite.com/mysubpage/article1/comment1
www.mysite.com/mysubpage/article1/comment2/single-view
etc
Zdecydowaliśmy się na takie rozwiązanie, ponieważ przypadek z mm_forum pokazał, że usunięcie memcache tylko dla jednego urla to zdecydowanie za mało. Mechanizm ten wciąż nie jest idealny ale intensywnie pracujemy nad tagowaniem rekordów zapisywanych do memcache. Tagowanie wniesie całkiem nowe możliwości do całego modułu i pozwoli na jeszcze bardziej wydajne działanie całego rozszerzenia.
Zobacz również:

Najnowsze komentarze
Powered by Disqus