kolejne pytanie dziś, cały dzień przed komputerem, czytam i czytam i niewiele z tego wynika
jak to jest z tym cache'owaniem (będę pisał keszowaniem, trochę to bardziej naturalne) w symfony2? mam kilka pytań:
1
nie mam włączonego APC. pierwsze ładowanie strony w sf2 trwa 500 ms, a każde kolejne 30-60ms. dlaczego?
2
załóżmy, że chcę używać w skrypcie APC. czy będę musiał coś zmieniać w kodzie (jak w przypadku memcache) czy po prostu wystarczy to włączyć i co jakiś czas czyścić cache?
3
czy APC potrzebuje mieć coś specjalnego (np. flagi kompilacji php) czy można tego używać na każdym serwerze? jeśli nie, to na jakim da się tego używać, co jest wymagane (mam obecnie serwer na proserwer.pl, pewnie nie zadziała?)
Pierwsze ładowanie strony w sf2 trwa 500 ms, a każde kolejne 30-60ms. dlaczego?
Przy pierwszym uruchomieniu ładowane jest wszystko od zera i wrzucane do kesza. W ten sposób kolejne żądania ładują rzeczy z kesza i są szybsze.
załóżmy, że chcę używać w skrypcie APC. czy będę musiał coś zmieniać w kodzie (jak w przypadku memcache) czy po prostu wystarczy to włączyć i co jakiś czas czyścić cache?
czy APC potrzebuje mieć coś specjalnego (np. flagi kompilacji php) czy można tego używać na każdym serwerze? jeśli nie, to na jakim da się tego używać, co jest wymagane (mam obecnie serwer na proserwer.pl, pewnie nie zadziała?)
@MacDada: na hostingu współdzielonym raczej żadnego opcache nie uświadczysz, wynika to z tego że opcache używa shared memory (współdzieli cache na wszystkie procesy php), można to ominąć tworząc procesy php dla każdego usera ale
Przy pierwszym uruchomieniu ładowane jest wszystko od zera i wrzucane do kesza. W ten sposób kolejne żądania ładują rzeczy z kesza i są szybsze.
@MacDada: o tym wiem, ale skoro nie mam żadnego włączonego...?
1. Ładuje się klasa, parsuje, a jej opcode jest keszowany. W ten sposób w kolejnych wywołaniach klasa leci z pamięci. Jak zmienisz coś w klasie, musisz zrzucić cały kesz APC. Symfony nie ma nic do tego, tak
btw. nie inwestował bym za dużo czasu w ogarnięcie APC, z tego względu że nie jest już rozwijany, ostatnia wersja z września 2012 jest
@Jaslanin: zabiłeś mnie tym, tyle czytałem że w php6 ma być wbudowane apc ale nie patrzyłem na daty... cóż, chyba nie ma sensu uczyć się czegoś co się później nie przyda?
jak w takim razie mogę przyspieszyć stronę na współdzielonym serwerze?
Symfony ogólnie nie nadaje się na hostingi współdzielone bez shella. W teorii da się, ale znacznie utrudnia to deploy, zarządzanie, itp.
Pytanie: chcesz tylko potestować czy faktycznie postawić stronę z Symfony?
* Jeśli tylko potestować, pouczyć się, itp – nie potrzebujesz hostingu – rób to lokalnie na swojej maszynie.
* Jeśli chcesz faktycznie hostować gdzieś appkę Symfonową, znajdź lepszy hosting, bo na współdzielonym będziesz dzielnie walczył z problemami nieznanymi w normalnych środowiskach.
1. Nie przejmuj się wydajnością, optymalizacją, itp. Na to będzie czas później. Na razie dobrze poznaj narzędzia z których chcesz korzystać.
@MacDada: już raz się nie przejmowałem wydajnością przy pracy z KO3. po tym jaki bajzel się zrobił postanowiłem od początku robić wszystko jak należy, a nie jak wcześniej "aby działało"
po prostu nie chcę używać kohany do tej strony, bo to już stara technologia i nikt tego nie używa, zamiast tego przyzwyczajać się do nowoczesnego symfony
To proponuję http://silex.sensiolabs.org/ – microframework od twórcy Symfony. Idea jest odwrotna od „dużego” frameworka.
Symfony ma wszystko na raz, zdefiniowaną strukturę, od groma bajerów na starcie, dużo trzeba się nauczyć, żeby z tego efektywnie korzystać.
Silex ma na starcie ma praktycznie tylko obsługę kontrolerów/routingu.
już raz się nie przejmowałem wydajnością przy pracy z KO3. po tym jaki bajzel się zrobił postanowiłem od początku robić wszystko jak należy, a nie jak wcześniej "aby działało"
Najpierw piszesz, żeby działało. Potem piszesz, żeby było „ładnie” (refactoring). Potem szukasz, co działa mało wydajnie i dopiero tylko te pojedyncze elementy optymalizujesz.
@MacDada: a są jakieś ogłoszenia typu "szukamy programisty php wymagania znajomość frameworka silex"? :)
I ta sama rada: przeczytaj całą dokumentację i dopiero bierz się za pisanie ;)
@MacDada: na mnie to raczej nie działa. zawsze przed nauką czegoś nowego owszem, przeglądam dokumentację, ale nie czytam od deski do deski, bo nic bym z tego nie zrozumiał. po prostu zaczynam coś pisać, a w miarę jak coś zmieniam i widzę
Najpierw piszesz, żeby działało. Potem piszesz, żeby było „ładnie” (refactoring). Potem szukasz, co działa mało wydajnie i dopiero tylko te pojedyncze elementy optymalizujesz. http://c2.com/cgi/wiki?PrematureOptimization
@MacDada: jednak chyba mnie przekonałeś, poważnie się nad tym zastanowię :)
Mogę Ci wytłumaczyć czym jest reverse proxy, ale to wymaga wiedzy na temat protokołu HTTP. O nagłówki HTTP też później będziesz pytał? Czy może jednak czas siąść i się po prostu pouczyć?
@MacDada: z elektrody tu przyszedłeś? jeszcze zapytaj czy nie działa mi wyszukiwarka i czy mam bana na google...
zapytałem CO JEST NAJLEPSZE W MOIM KONKRETNYM PRZYPADKU a nie jak się czegokolwiek używa a dokładniej o wybór jednej z cztech dróg więc jeśli nie chcesz pomóc do GTFO
skoro twój czas jest dla ciebie tak cenny to po kiego #!$%@? tu jęczysz i mnie wołasz?
i co w takim przypadku zrobić aby strona była jak najszybsza?
5. Przeczytać dokumentację, żeby zrozumieć jak Symfony działa.
zapytałem CO JEST NAJLEPSZE W MOIM KONKRETNYM PRZYPADKU
To nie jest żaden konkretny przypadek. To standardowa sytuacja. Piszesz appkę w Symfony, chcesz ją deploynąć, szukasz jak zoptymalizować jej działanie. Każdy tak robi przy każdym projekcie.
Czy za 4500 zł netto, warto wyprowadzić się od rodziców i zamieszkać w mieście 100k mieszkańców? Czy realnie jestem w stanie się utrzymać i coś odłożyć? #pytanie #zarobki #pracbaza #zycie
kolejne pytanie dziś, cały dzień przed komputerem, czytam i czytam i niewiele z tego wynika
jak to jest z tym cache'owaniem (będę pisał keszowaniem, trochę to bardziej naturalne) w symfony2? mam kilka pytań:
1
nie mam włączonego APC. pierwsze ładowanie strony w sf2 trwa 500 ms, a każde kolejne 30-60ms. dlaczego?
2
załóżmy, że chcę używać w skrypcie APC. czy będę musiał coś zmieniać w kodzie (jak w przypadku memcache) czy po prostu wystarczy to włączyć i co jakiś czas czyścić cache?
3
czy APC potrzebuje mieć coś specjalnego (np. flagi kompilacji php) czy można tego używać na każdym serwerze? jeśli nie, to na jakim da się tego używać, co jest wymagane (mam obecnie serwer na proserwer.pl, pewnie nie zadziała?)
Przy pierwszym uruchomieniu ładowane jest wszystko od zera i wrzucane do kesza. W ten sposób kolejne żądania ładują rzeczy z kesza i są szybsze.
O który kesz
@MacDada: na hostingu współdzielonym raczej żadnego opcache nie uświadczysz, wynika to z tego że opcache używa shared memory (współdzieli cache na wszystkie procesy php), można to ominąć tworząc procesy php dla każdego usera ale
@MacDada: o tym wiem, ale skoro nie mam żadnego włączonego...?
@Jaslanin: zabiłeś mnie tym, tyle czytałem że w php6 ma być wbudowane apc ale nie patrzyłem na daty... cóż, chyba nie ma sensu uczyć się czegoś co się później nie przyda?
jak w takim razie mogę przyspieszyć stronę na współdzielonym serwerze?
Symfony keszuje sobie sparsowaną konfigurację, szablony twiga, obiekty proxy Doctrine'a, itp. Zajrzyj do katalogu cache.
Jeśli włączysz w konfiguracji APC cache opcode, to nawet nie musisz mapować – przy pierwszym użyciu klasy Ci się zakeszuje automatycznie.
1. Nie przejmuj się wydajnością, optymalizacją, itp. Na to będzie czas później. Na razie dobrze poznaj narzędzia z których chcesz korzystać.
2. Zainstaluj u siebie na komputerze środowisko developerskie: klasyczny (x)AMP: system + apache + mysql + php.
3. Uruchom Symfony na tym środowisku. Niech pokaże HelloWorlda i nic więcej.
4. Przeczytaj od deski do
Pytanie: chcesz tylko potestować czy faktycznie postawić stronę z Symfony?
* Jeśli tylko potestować, pouczyć się, itp – nie potrzebujesz hostingu – rób to lokalnie na swojej maszynie.
* Jeśli chcesz faktycznie hostować gdzieś appkę Symfonową, znajdź lepszy hosting, bo na współdzielonym będziesz dzielnie walczył z problemami nieznanymi w normalnych środowiskach.
@MacDada: trafiłeś, od czterech dni
@MacDada: już raz się nie przejmowałem wydajnością przy pracy z KO3. po tym jaki bajzel się zrobił postanowiłem od początku robić wszystko jak należy, a nie jak wcześniej "aby działało"
To proponuję http://silex.sensiolabs.org/ – microframework od twórcy Symfony. Idea jest odwrotna od „dużego” frameworka.
Symfony ma wszystko na raz, zdefiniowaną strukturę, od groma bajerów na starcie, dużo trzeba się nauczyć, żeby z tego efektywnie korzystać.
Silex ma na starcie ma praktycznie tylko obsługę kontrolerów/routingu.
Najpierw piszesz, żeby działało. Potem piszesz, żeby było „ładnie” (refactoring). Potem szukasz, co działa mało wydajnie i dopiero tylko te pojedyncze elementy optymalizujesz.
http://c2.com/cgi/wiki?PrematureOptimization
@MacDada: na mnie to raczej nie działa. zawsze przed nauką czegoś nowego owszem, przeglądam dokumentację, ale nie czytam od deski do deski, bo nic bym z tego nie zrozumiał. po prostu zaczynam coś pisać, a w miarę jak coś zmieniam i widzę
@MacDada: jednak chyba mnie przekonałeś, poważnie się nad tym zastanowię :)
załóżmy, że sytuacja trochę się zmienia - wykupię najtańszy hosting na linuxpl (gdzie jest dostęp do shella)
i co w takim przypadku zrobić aby strona była jak najszybsza?
1. nie robić nic - ktoś pisał że symfony samo keszuje klasy i cośtam, ale nie wiem jak by to wyszło w praktyce
2. memcached - opcja raczej odpada ze względu na dopłatę do hosting (dopłata 60 zł
Mogę Ci wytłumaczyć czym jest reverse proxy, ale to wymaga wiedzy na temat protokołu HTTP. O nagłówki HTTP też później będziesz pytał? Czy może jednak czas siąść i się po prostu pouczyć?
zapytałem CO JEST NAJLEPSZE W MOIM KONKRETNYM PRZYPADKU a nie jak się czegokolwiek używa a dokładniej o wybór jednej z cztech dróg więc jeśli nie chcesz pomóc do GTFO
skoro twój czas jest dla ciebie tak cenny to po kiego #!$%@? tu jęczysz i mnie wołasz?
5. Przeczytać dokumentację, żeby zrozumieć jak Symfony działa.
To nie jest żaden konkretny przypadek. To standardowa sytuacja. Piszesz appkę w Symfony, chcesz ją deploynąć, szukasz jak zoptymalizować jej działanie. Każdy tak robi przy każdym projekcie.