![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 505 Pomógł: 0 Dołączył: 8.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam ponownie,
Biorąc pod uwagę opinie i zalecenia forumowiczów , powstała pierwsza stabilna i oficjalna wersja klasy Chameleon do obsługi szablonów. Na wstęp drobne porównanie z klasą Smarty. Test symulujący całkowite przeładowanie strony z wykorzystanie cache dyskowego. Smarty korzysta ze skompilowanych szablonów , Chameleon z mapy tagów : Smarty : 500 iteracji (20 zmiennych) = 0.3475s Smarty : 500 iteracji (10 zmiennych) = 0.3067s Smarty : 500 iteracji (5 zmiennych) = 0.2965s Chameleon : 500 iteracji (20 zmiennych) = 0.2336s Chameleon : 500 iteracji (10 zmiennych) = 0.2095s Chameleon : 500 iteracji (5 zmiennych) = 0.2105s Kolejny test symulujacy kilkakrotne parsowanie szablonu podczas jednego wywolania strony, sytuacja ma miejsce gdy parsujemy kilkakrotnie ten sam szablon (np. formatka newsa) z zaladowana mapa tagow w pamieci. Oto wyniki : Smarty : 500 powtórzeń (20 zmiennych) = 0.2462s Chameleon : 500 powtórzeń (20 zmiennych) = 0.0981s ---------------- Co potrafi Chameleon : # Cache tagow na dysku twardym # Zmienne typu : {zmienna} {test} # Zmienne tablicowe jednowymiarowe : {tablica[0]} {tablica[1]} # Zagniezdzone IFy dowolnej glebokosci z obsluga negacji oraz ELSE (Narazie warunek sprawdzany jest logicznie tylko czy zmienna jest ustawiona) # Petle szablonowe # Podswietlanie blednych tagow # Proste operacje matematyczne ----------------------------------------------------------
Przyklad 1 : Zmienne zwykle Szablon : http://www.vertis.com.pl/chameleon/example...es/example1.tpl Demo : http://www.vertis.com.pl/chameleon/example...es/example2.php --
Przyklad 3 : Zmienne tablicowe Szablon : http://www.vertis.com.pl/chameleon/example...es/example3.tpl Demo : http://www.vertis.com.pl/chameleon/example...es/example3.php --
Przyklad 6 : Warunki Szablon : http://www.vertis.com.pl/chameleon/example...es/example6.tpl Demo : http://www.vertis.com.pl/chameleon/example...es/example6.php --
Przyklad 7 : Petle w szablonie Szablon : http://www.vertis.com.pl/chameleon/example...es/example7.tpl Demo : http://www.vertis.com.pl/chameleon/example...es/example7.php -- Klasę w wersji 1.0.0 można pobrać z http://www.vertis.com.pl/ Ten post edytował Bastion 18.06.2006, 22:58:47 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
W takiej najprostszej wersji to:
ab.exe -c 50 -n 300 http://link/do/strony/dla/danego/systemu.php (300 odwolan w sumie, po 50 na raz rownolegle) Zeby to troche zautomatyzowac to napisalem sobie skrypcik w bashu, ktory wywoluje wszystko po kolei automatycznie i wyswietla ladnie wyniki. Jutro postaram sie udostepnic calosc. Zrobilem w koncu jakis normalny szablon.. zawiera wiekszosc rzeczy, o ktorych wspomnial hwao. Mam tylko problem ze zmuszeniem do dzialania funkcji cycle w OPT, wiec dla niego nie mam jeszcze gotowego szablonu. Kod wklejony z dokumentacji wywoluje blad :/ Poki co.. szablony sa tu (w wersji Smarty): http://willow.iie.uz.zgora.pl/~ipatalas/de...tpl/header.html http://willow.iie.uz.zgora.pl/~ipatalas/de...tpl/footer.html http://willow.iie.uz.zgora.pl/~ipatalas/de.../tpl/tpl_1.html (forum automatycznie zmienia duze litery php na male, wiec trzeba sobie w linku to zmienic z powrotem na duze, zeby linki zadzialaly - wszystkie litery w slowie php w linkach powinny byc duze) Wyniki dla tego szablonu przedstawiaja sie tak: Kod Testing Chameleon 1.1.0 CVS => skipped Testing Chameleon 1.1.5 => skipped Testing Nemesis 1.3.0b => 127.15 requests/s Testing OPT 1.0.0 RC2 => skipped Testing OPT 1.0.0 RC2 Lite => skipped Testing Savant 2.4.2 => 114.29 requests/s Testing SmartTemplate 1.0.2 => skipped Testing Smarty 2.6.12 => 58.01 requests/s Testing Smarty Light 2.2.11 => 58.18 requests/s oraz z wlaczonym cachowaniem (oprocz Savanta, u ktorego takiej opcji nie widzialem): Kod Testing Chameleon 1.1.0 CVS => skipped Testing Chameleon 1.1.5 => skipped Testing Nemesis 1.3.0b => 228.57 requests/s Testing OPT 1.0.0 RC2 => skipped Testing OPT 1.0.0 RC2 Lite => skipped Testing Savant 2.4.2 => 113.61 requests/s Testing SmartTemplate 1.0.2 => skipped Testing Smarty 2.6.12 => 107.26 requests/s Testing Smarty Light 2.2.11 => 150.00 requests/s Jak widac na takim szablonie Smarty dostaje jeszcze bardziej po tylku.. SmartTemplate nie obsluguje chyba wszystkich rzeczy, ktore sa do tego testu potrzebne (a dokumentacji do niego znalezc nie moge..), a OPT dorobie jak opanuje tego cycle'a. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 20:14 |