Temat: Zend_Cache / Renderowanie widoku z pluginu

Witam

Od dłuższego czasu zastanawiam się jak zrobić cache dla aplikacji.
Cała strona jest podzielona na:
- Treść - Cache 1h
- Menu - Cache 5h
- Menu użytkownika - Cache 5min
- Aktualnie online - Cache 10min

Na początku zrobiłem cache wyników z bazy, to rozwiązanie jakoś mnie nie zadowoliło.

Po czasie postanowiłem robić cache akcji:

public function indexAction()
{
if(false !== ($daneDoWyswietlenia = $cache->load('default_indexAction'))
{
// Normalny kod
}

// Dane przekazywane do widkou
}

Jednak nie uśmiechało mi się pisać wszędzie tego ifa.

Ostatecznie postanowiłem robić cache requesta (przy pomocy pluginu). W tym miejscu pojawiły się schody. Jeżeli użytkownik A zaloguje się na stronie, to jego dane zostaną pokazane użytkownikowi B, C, D ...
Treść i główne dane dodawałem:
$response->insert('menu',$menuZCache);


Wiecie może jak renderować stronę z pominięciem kontrolera, lub znacie inne ciekawe rozwiązania?

Pozdrawiam :)

konto usunięte

Temat: Zend_Cache / Renderowanie widoku z pluginu

Praktyka pokazuje że najbardziej skuteczne jest cachowanie konkretnych elementów, które sprawiają problemy. Zajmij się napisaniem aplikacji, jeśli podczas jej działania natrafisz na wąskie gardło, to wtedy szukaj rozwiązania (cachuj), nie odwrotnie. Z Twojego podejścia wnioskuję iż próbujesz optymalizować aplikację, której jeszcze nie ma. Pamiętaj że silniki bazodanowe też posiadają swoje mechanizmy cachowania danych i to co z pozoru może wydawać się problematyczne, wcale takie nie będzie.
Grzegorz N.

Grzegorz N. trochę programuje...

Temat: Zend_Cache / Renderowanie widoku z pluginu

Witam.

Jakub ma całkowitą rację - cache'a powinieneś użyć do "tuningu" aplikacji, nie ma sensu dorabiać sobie pracy.

Poza tym proponuję zapoznać się z Zend_Cache_Frontend_Page i Zend_Cache_Frontend_Output - najpierw staraj się wykorzystać gotowe mechanizmy, a jak nie będą wystarczająco zadowalające to pisz swoje - tak jest szybciej ;-)

Pozdrawiam!



Wyślij zaproszenie do