moze lekko nie na temat ale polecam ten filmik albo ksiazke ktora ten osobnik (autor wtyczki YSlow do firebuga) napisal:
http://www.youtube.com/watch?v=BTHvs3V8DBAMoje doswiadczenia sa podobne, o malo nie dalem sie zwariowac na punkcie optymalizacji mvc, srubujac czasu pomiedzy operacjami o kolejne microsekundy ale powyzszy filmik rzucil nowe swiatlo na optymalizacje.
Wg Steve'a 5% rezultatu optymalizacji przypada na strone serwera a pozostale 95% na strone klienta
Nie umniejszajac waznosci pisania szybkiego kodu php i jego optymalizacji mozna zauwazyc ze optymalizujac php operuje sie na microsekundach a optymalizujac juz wygenerowany html operuje sie na sekundach co przeklada sie na fizyczne skrocenie czasu zaladowania strony
obiektowka spowalnia, oczywiste i pozera wiecej pamieci ale straty wg mnie z tym zwiazane sa znikome w porownaniu do plusow
aby minimalizowac te straty mamy mnostow mechanizmow do dyspozycji, chociazby cacheowanie na roznym poziomie, od query cache poczawszy przez cachowanie wynikow zapytan na poziomie php czy cachowanie widowko czy tez calego buffor'a. Czas generowania stron z kilkupoziomowym cachem niewiele odbiega od czasu generowania strukturalnego php czy statycznego html
Luzny przyklad jednego z projektow
1. zoptymalizowany mvc z 3 zapytaniami wykonuje sie w 0.013s
2. zoptymalizowany mvc 3 widoki z cache wykonuje sie w 0.0011s
3. zoptymalizowany mvc caly z cache wykonuje sie w 0.0009s
4. statyczny html 0.0004s
Laczny czas ladowania html do przegladarki 2.2s z czego jak widac wygenerowanie koncowego htmla z php jest znikoma czescia procesu
1. optymalizacja z uzyciem YSlow etags, expires headers skraca czas z 2.2s do 0.9s przy drugim ladowaniu
2. "css spread" lub rozlozenie obrazkow na 2 subdomeny skraca czas do 0.55s
3. przelozenie css na gore HEAD i JS tuz przezd </BODY> skraca czas jedynie do 0.45 aczkolwiek uzytkownik widzi strone duzo szybciej
Ktos ma jakies doswiadczenia w tym kierunku? gdzie co i jak drastycznie przyspiesza strone?