
| Autor | Wiadomość |
|---|---|
|
Napisane: 25.03.2009 [16:53]
|
|
|
bart
Twórca tematu
zarejestrowany: 03.12.2008
Posty: 53
|
Tak to mozliwe Jesli ktos z was mial problem z wydajnoscia TYPO3 to zachecam do przetestowania wtyczki evo_nginx_boost. http://blog.evo.pl/2009/03/21/how-to-boost-speed-up-your-typo3-website-with-nginx/ Rozwiazanie sami juz troche testowalismy ale uznalismy ze czas podzielic sie ze spolecznoscia bo moze sie pojawia nowe pomysly w celu usprawnienia rozwiazania. |
|
Napisane: 25.03.2009 [20:03]
|
|
|
biesior
admin
zarejestrowany: 20.03.2008
Posty: 1338
|
Bartek ja Ciebie pokornie proszę pisz częściej na forum... czasy renderingu w granicach 2.5 ms to jest absolutny fenomen, do tej pory cieszyłem się przy 40-50 ms z cache'u Sesja wygasła, zaloguj się, żeby się wylogować.
T3CI Certified Level 2 TYPO3 Night Crew Member. KO System enthusiast |
|
Napisane: 26.03.2009 [09:16]
|
|
|
bart
Twórca tematu
zarejestrowany: 03.12.2008
Posty: 53
|
Spoko bede sie staral czesciej Na blogu tez bede wrzucal ciekawostki a wkrotce pare nowych. Odnosnie czasow o ktorych mowisz to 40-50ms to dla strony bez wtyczke USER_INT. Z jedna choc taka wtyczka juz takiego czasu nie osiagniesz. Rozwiazanie ktore opisalem rozwiazuje tez ten problem. W zasadzie ciezko nawet mowic o czasie geenracji poniewaz nginx wyswietla poprostu zawartosc odraz z memcacha. |
|
Napisane: 26.03.2009 [09:25]
|
|
|
kss
admin
zarejestrowany: 19.07.2007
Posty: 811
|
Hej Bartosz, Gratuluję wtyczki! Jedna z wad TYPO3, powolne renderowanie, ma szansę na zapomnienie przez odpowiednie użycie cache. Super. Szkoda tylko, że infrastruktura potrzebna do jej wykorzystania wymaga vps, albo dedyka i masy roboty Nim to nastąpi mam pytanie, bo nie wiem czy dobrze zrozumiałem. Chodzi mi o to w jaki sposób w Twoim rozwiązaniu są obsługiwane zmiany, weźmy przykład, profilu użytkownika X przez działania użytkownika Y (albo jakiekolwiek inne działania zewnętrzne). Case: Profil użytkowników pozwala na abonowanie ostatnich nowości z dowolnej kategorii. User A jako jedyny z 30000 userów zapisany jest na kategorię Z. Admin BE dodaje rekord tt_news w kategorii Z. Optymalnie byłoby więc wyczyścić cache strony z profilem tylko userowi A, pozostawiając 29999 niezmienionych profili w cache. Z tego co wywnioskowałem w Twoim rozwiązaniu określa się czas odświeżania stron z treścią dynamiczną, czyli profil staje się nieaktualny np. po 5 min. W powyższym przykładzie z rekordem tt_news co 5 minut przedawnia się cache 30000 profili mimo, ze tak naprawdę przedawnić powinien się tylko ten jeden dla którego powstała nowość z kategorii Z. I jeszcze jedno pytanie na przykładzie związane z interwałem czyszczenia. Jeżeli user A będąc na profilu usera B wykona action „dodaj tego użytkownika do moich znajomych” to kiedy ta zmiana uwidoczni się w profilu użytkownika A i w profilu użytkownika B? Po tym interwale? Czy może wtyczka obsługująca ten action czyści w memcache stronę z profilem wywołującego A i wywołanego B, generuje nowe i zmiany są widoczne natychmiast? Sorry jeżeli gdzieś popełniam podstawowy błąd, ale słabo znam zasady działania ngixa i memcache, więc niewykluczone, że czegoś po prostu nie rozumiem. |
|
Napisane: 26.03.2009 [10:18]
|
|
|
bart
Twórca tematu
zarejestrowany: 03.12.2008
Posty: 53
|
Hej Kss Tak wymaga dedyka ale czy odrazu mase roboty. Jesli masz na mysli przejscie z masshostnigu na dedyk to napewno bo jako root musisz sobie przygotowac cale srodowisko. Jednak jesli mowimy o samej isntalacji nginxa i polaczeniu tego to raczej 1h pracy Wracaja do Twoich pytan: Tak w obecnym rozwiazaniu przedawni sie cache dla wszytskich uzytkowikow po okreslonym czasie chyba ze uzytkownik wykonal jakas akcje w postaci POST. Dane w memchachu dostepne przez 1 min w bardzo obciazonym srodowisku daja ogromny oddech. Pamietaj tez ze dane sie przedawniaja nie jednoczesnie np user A zobaczy nowa wersje o 14:21 a user B o 14:25. My nie uzywamy ocji czyszczenie memcachu kiedy zostana naniesione zmiany w BE bo to odrazu wzmaga obciazenie na proces php. Krotkie czasy sa praktycznie nie zauwazalne dla uzytkownikow. Jesli chodzi o drugie pytanie to zmiana w profulu uzytkownika A bedzie widoczna odrazu poniewaz do serwera zostanie wyslane żądanie POST i evo_ngix_boost stworzy nowa wersje strony. Uzytkownik B zobaczy to po interwale cachowania. Myslimy dodatkowo o rozwienieciu calosci o rejestrowanie kluczy w TYPO3 aby mozna bylo robic wszystko co chcesz Problemy o ktorych piszesz tez pojawiaja sie w innych srodowiskach. Ciekawy case z Facebooka http://www.facebook.com/note.php?note_id=23844338919 |
|
Napisane: 05.04.2009 [02:34]
|
|
|
wolo
zarejestrowany: 04.09.2007
Posty: 20
|
kolega Ryży jakiś czas temu opublikował fajny plugin do obsługi Memcached w Typo typo3.org/extensions/repository/view/r_memcached/current/ na razie jest podstawowa funkcjonalność, nie obsługuje jeszcze tagów (pracuję nad tym) i czyścić trzeba cache całości/pojedynczych stron przez co nie nadaje się do co bardziej dynamiczno-złożonych sajtów (jeszcze). no i nie działa przez proxy, czyli procesy apache mimo wszystko się uruchamiają - ale wzrost wydajności jest spory, a instalacja banalna. [Ten temat był edytowany 2 razy. Ostatnio 05.04.2009 o 02:39.] `Well! I've often seen a cat without a grin,` - thought Alice, `but a grin without a cat! It's the most curious thing I ever saw in all my life!`
|
|
Napisane: 05.04.2009 [11:07]
|
|
|
bart
Twórca tematu
zarejestrowany: 03.12.2008
Posty: 53
|
z ta prostota instalacji to bym nie przesadzal zenda trzeba pobrac, problem ze includowanymi sciezkami jest na niektorych instalacjach no i trzeba zmieniac plik index.php no ale to juz akurat musi byc w kazdym razie kazde rozwiazanie ktore odciazy baze danych i proces php jest zawsze wskazane swoja droga nasza wtyczka niedlugo bedzie miala tez opcje pracy bez proxy dokladnie w takim samym podejsciu jak r_memcache ale bez zenda |
|
Napisane: 05.04.2009 [19:53]
|
|
|
wolo
zarejestrowany: 04.09.2007
Posty: 20
|
nigdy nie patrzyłem na kwestię użycia zenda jako jakiś problem. mogę sobie szybko przerobić ten ext, żeby zf-a nie wymagał, ale nie widzę takiej potrzeby. z includowaniem i ścieżkami jest problem, gdy ktoś sam próbuje go includować i nie wie, jak się to robi. dla mnie rozpakowanie tara i zedytowanie 2 plików to nie jest kłopot, a zenda i tak używam do różnych innych rzeczy. poza tym przy pomocy zenda mogę łatwo dopisać sobie obsługę tagów (na co na razie nie znajduję czasu niestety) pozdrawiam! no offense - jeśli przypadkiem wypowiedź tak zabrzmiała - to nie miała `Well! I've often seen a cat without a grin,` - thought Alice, `but a grin without a cat! It's the most curious thing I ever saw in all my life!`
|
|
Napisane: 05.04.2009 [20:55]
|
|
|
bart
Twórca tematu
zarejestrowany: 03.12.2008
Posty: 53
|
spoko dzieki za odpowiedz mysle ze nie precyzyjnie sie wypowiedzialem dla mnie, dla Ciebie i pewnie wielu osob ktore mocno siedza w kodzie wiele rzeczy nie sa problemem ale projektujac rozne rozwiazania musimy myslec o tym zeby ich instalacja, uzycie i konfiguracja byly jak najbardziej dostepne Oczywiscie nie zawsze sie da bo postawienie np nginxa juz wymaga pewnej wiedzy ale wiele osob w zyciu nie zedytuje pliku index albo nie bedzie inlcudowac zenda na wlasna odpowiedzialnosc, a z kwestia wydajnosci na 100% sie zetkna p.s nie zabrzmiala tak i nie zostala tak odebrana |
|
Napisane: 19.05.2009 [13:25]
|
|
|
bart
Twórca tematu
zarejestrowany: 03.12.2008
Posty: 53
|
Mamy nowa wersje w TER. Dokumentacja na razie po polsku http://techblog.evo.pl/evo_nginx_boost-extension/ Duzo zmian i dodatkow. Wtyczka tez dziala bez nginxa |