[php] jak mierzyc dlugosc wykonywanai skrypu?
[php] jak mierzyc dlugosc wykonywanai skrypu?
No wlasnie? jak najprowsciej to zrobic? mierzenie etapow funkcja tmie() nic nei daje gdyz zawsze roznica daje 0 (widocznei time stawia stamp wszedzie taki sam). Co radzicie?
-
Wojciech Kocjan
- Zaczyna działać

- Posty: 427
- Rejestracja: sob gru 14, 2002 10:51 am
Re: [php] jak mierzyc dlugosc wykonywanai skrypu?
dzieki wielkie!!! ale mam problem. Dokladnie to samo wfralem na rozne serery i jeden z nich nie mierzy realnego czasu!!! O co chodzi, porownajcie:
http://www.cichos.pl/speed/indexa.php
http://foe.boo.pl/speed/indexa.php
http://www.cichos.pl/speed/indexa.php
http://foe.boo.pl/speed/indexa.php
-
Wojciech Kocjan
- Zaczyna działać

- Posty: 427
- Rejestracja: sob gru 14, 2002 10:51 am
Re: [php] jak mierzyc dlugosc wykonywanai skrypu?
To nie jest zaden problem.. Tak po prostu jest. Logiczne ze na serwerze z lepszymi parametrami technicznymi (glownie procesor) i szybszym laczem, strona zostanie wygenerowana szybciej, niz np. na serwerze z celeronem 300MHZ postawionym na modemie.
Tak wiec na kazdym z serwerow bedziesz mial rozne czasy generowania.. Im mniejszy tym oczywiscie lepszy serwer..
Tak wiec na kazdym z serwerow bedziesz mial rozne czasy generowania.. Im mniejszy tym oczywiscie lepszy serwer..
Re: [php] jak mierzyc dlugosc wykonywanai skrypu?
widze ze nei sprawdziles linkow. Problem w tym ze ten drugi to robi dluzej niz ten pierwszy!!! a zawsze jest i tak niby szybki.Np teraz generowal mi strone 10 sekund a napisal ze trwalo to 0,04 sek. Pierwszy link robi to w ok. 6 sek i rzeczywiscie pokazuje 6.21 sek.
-
Dawid Pytel
- Nowy

- Posty: 67
- Rejestracja: śr cze 19, 2002 8:58 pm
- Lokalizacja: Tychy
- Kontakt:
Re: [php] jak mierzyc dlugosc wykonywanai skrypu?
No to mam pytanie. Skąd wiesz, że skoro Twój skrypt wykonywał się 6,4 sekundy, tak naprawdę robił to w 6 sekund ?
No a teraz najwazniejsza sprawa. Jak możesz zauważyć wzrokowo granice pomiędzy wykonaniem skryptu a rozpoczęciem generowania HTMLa ??
No a teraz najwazniejsza sprawa. Jak możesz zauważyć wzrokowo granice pomiędzy wykonaniem skryptu a rozpoczęciem generowania HTMLa ??
Re: [php] jak mierzyc dlugosc wykonywanai skrypu?
mozna sie domyslic po tekscie, ze piszac "ok. 6 sek." mial namysli czas mierzony empiryczny - czyli rzeczywisty. Jezeli od wpisania adresu do czasu wygenerowania calej strony mija 6 sek. to znaczy, ze tyle byl generowaqna. Potwierdza to Wasz skrypt dajac taki sam wynik. Wiec o co chodzi?Dawid Pytel pisze:No to mam pytanie. Skąd wiesz, że skoro Twój skrypt wykonywał się 6,4 sekundy, tak naprawdę robił to w 6 sekund ?
Moim problem jest to , ze Wasz skrypt nie dziala an innym serwerze, bo chyba mi nie powiecie ze pokazujac ze zrobil to w 4 setne sekundy, a pokazujac mi strone po 10 sek, ze wszytko jest ok. Odnosze takie wrazenie ze chcecie mi to wmowic.
a po co mi to widziec? skrypt mierzy czas calosci (przynajmniej na pierwszym serwerze). Zreszta nie wiem po co ja to mowie - uzywam Waszego skryptu i chyb powinniscie wiedziec jak dziala.Dawid Pytel pisze:No a teraz najwazniejsza sprawa. Jak możesz zauważyć wzrokowo granice pomiędzy wykonaniem skryptu a rozpoczęciem generowania HTMLa ??
Chcialem sie dowiedziec dlaczego an dwoch serwerach ten skrypt dziala inaczej, a wy mnie przekonujecie ze wszystko jest ok
-
Dawid Pytel
- Nowy

- Posty: 67
- Rejestracja: śr cze 19, 2002 8:58 pm
- Lokalizacja: Tychy
- Kontakt:
Re: [php] jak mierzyc dlugosc wykonywanai skrypu?
heh...
nie odpowiedziales mi dalej na moje pytanie (przy okazji wyjasnisz SOBIE kilka spraw).
Skrypt liczy czas wykonywania skryptu php na stronie www a nie czas pojawienia sie strony. Powiedzmy, ze Twoj skrypt pobiera rekordy z bazy danych i pozniej przy ich pomocy worzy kod html. Powiedzmy ze zanim przegladrka z tego kodu zlozy cala strone minie 1 minuta ale Twoj skrypt wykonal sie w powiedzmy 0.4 sekundy.
a "tonem" Twojej wiadomosci tylko irytujesz ludzi co nie pomoze Ci w rozwiazaniu problemu.
nie odpowiedziales mi dalej na moje pytanie (przy okazji wyjasnisz SOBIE kilka spraw).
Skrypt liczy czas wykonywania skryptu php na stronie www a nie czas pojawienia sie strony. Powiedzmy, ze Twoj skrypt pobiera rekordy z bazy danych i pozniej przy ich pomocy worzy kod html. Powiedzmy ze zanim przegladrka z tego kodu zlozy cala strone minie 1 minuta ale Twoj skrypt wykonal sie w powiedzmy 0.4 sekundy.
a "tonem" Twojej wiadomosci tylko irytujesz ludzi co nie pomoze Ci w rozwiazaniu problemu.
Re: [php] jak mierzyc dlugosc wykonywanai skrypu?
i jak tu sie nie irytowac!!! Pisalem ze ten skrypt liczy calosc generowania strony, lacznie z przeslaniem wyniku do przegladarki. nie powisz mi chyba ze w pierwszym przypadku strona generowana byla przez 6 sek a potem od razu otrzymalem kilkadziesiat kb, a w drugim przypadku serwer zrobil to w 4 setne tyle ze przez 10 sek to sciagalem.To absurd!!! Tym bardziej ze link pierwszy to serer z 3x szybszy od drugiego.
Tak wiec zmienie pytanie: jak to mozliwe ze na pierwszym sererze ten skrypt mierzy czas lacznie ze sciaganiem wygenerowanej strony a na drugim tylko czas gemnerowania na serwerze?
Tak wiec zmienie pytanie: jak to mozliwe ze na pierwszym sererze ten skrypt mierzy czas lacznie ze sciaganiem wygenerowanej strony a na drugim tylko czas gemnerowania na serwerze?
-
Dawid Pytel
- Nowy

- Posty: 67
- Rejestracja: śr cze 19, 2002 8:58 pm
- Lokalizacja: Tychy
- Kontakt:
Re: [php] jak mierzyc dlugosc wykonywanai skrypu?
No to mam do Ciebie prośbę. Pokaż mi ten skrypt. Zwracam Ci honor jeżeli on liczy całkowity czas pokazania strony. Nigdy sie z czyms takim nie spotkalem!
Tak wiec albo ja sie myle albo Ty nei masz zueplnie pojecia jak dziala strona internetowa (wysylanie jej z serwera).
Tak wiec albo ja sie myle albo Ty nei masz zueplnie pojecia jak dziala strona internetowa (wysylanie jej z serwera).
Re: [php] jak mierzyc dlugosc wykonywanai skrypu?
co prawda 2 i 3 wpis wszytko podaja na talerzu, ale dokladnie to rozipsze:
[php]
<?
function getmicrotime(){
list($usec, $sec) = explode(" ",microtime());
return ((float)$usec + (float)$sec);
}
$time_start = getmicrotime();
echo "start: $time_start";
?>
<html>
<?
$txted="<table border='1'>";
while ($zzz<1000){
$txted.="<tr><td>".++$zzz."</td><td>".$zzz*$zzz."</td><td>".$zzz*$zzz*$zzz."</td><td>".$zzz*$zzz*$zzz*$zzz."</td><td>".$zzz*$zzz*$zzz*$zzz*$zzz."</td><td>".$zzz*$zzz*$zzz*$zzz*$zzz*$zzz."</td></tr>";
}
$txted.="</table>";
//echo "generacja tabeli zajela po stronie serwera <b>".$zak." </b>sekund!<br>Wyświetlam tabele - czekaj, potem zejdz na dol - tam bedzie wynik predkosci serwera";
echo "<br><br>";
echo $txted;
?>
</html>
<?
$time_end = getmicrotime();
echo "end: $time_end<br>";
$time = substr($time_end - $time_start, 0, 4);
echo "<b>Strona została wygnerowana w $time sekund.</b>";
?>
[/php]
zobacz tu: http://www.cichos.pl/speed/indexa.php mierzy calkowity czas tworzenia strony, lacznie ze sciaganiem wyniku.
[php]
<?
function getmicrotime(){
list($usec, $sec) = explode(" ",microtime());
return ((float)$usec + (float)$sec);
}
$time_start = getmicrotime();
echo "start: $time_start";
?>
<html>
<?
$txted="<table border='1'>";
while ($zzz<1000){
$txted.="<tr><td>".++$zzz."</td><td>".$zzz*$zzz."</td><td>".$zzz*$zzz*$zzz."</td><td>".$zzz*$zzz*$zzz*$zzz."</td><td>".$zzz*$zzz*$zzz*$zzz*$zzz."</td><td>".$zzz*$zzz*$zzz*$zzz*$zzz*$zzz."</td></tr>";
}
$txted.="</table>";
//echo "generacja tabeli zajela po stronie serwera <b>".$zak." </b>sekund!<br>Wyświetlam tabele - czekaj, potem zejdz na dol - tam bedzie wynik predkosci serwera";
echo "<br><br>";
echo $txted;
?>
</html>
<?
$time_end = getmicrotime();
echo "end: $time_end<br>";
$time = substr($time_end - $time_start, 0, 4);
echo "<b>Strona została wygnerowana w $time sekund.</b>";
?>
[/php]
zobacz tu: http://www.cichos.pl/speed/indexa.php mierzy calkowity czas tworzenia strony, lacznie ze sciaganiem wyniku.
-
Wojciech Jurewicz
- Przelotem

- Posty: 274
- Rejestracja: wt lip 22, 2003 11:29 pm
- Lokalizacja: Mazury
- Kontakt:
Re: [php] jak mierzyc dlugosc wykonywanai skrypu?
Sam nie jestem do końca pewien, ale na ten błąd mogą składać się dwa czynniki. W jednym przypadku może być lepszy serwer, ale słabsze łącze, a na drugim odwrotnie, stąd ta różnica, no ale ja tylko gdybam...
Re: [php] jak mierzyc dlugosc wykonywanai skrypu?
no to aby zabic wam gwozdzia porawilem sktypt:
http://www.cichos.pl/speed/indexa.php
Jeszcze ktos twierdzi ze nie mozna zmierzyc calkowitego czasu generowania strony? Wciaz sie pytam dlaczego nei dziala tak na kazdym serwerze? przynajmniej ja testujac dwa, jednego nie moge zmusic do takiego dzialania jak wyzej - po prostu zawsze zwraca mi tylko czas generacji na serwerze.
Jesli wam to pomoze zobaczcie info serwera:
http://www.cichos.pl/info.php
Co do porzedniej wypowiedzi: juz pisalem, to niemozliwe. Czemu? Bo mierzylem empirycznie (stoperem) czas generacji strony, jest praktycznie identyczny z tym jaki pokazuje wynik skryptu! Tak wiec idac tropem poprzedzajacej wypowiedzi Moderatora, musialbym zalozyc, ze 118 KB strony pojawia sie u mnie w ulamku sekundy, co na laczu 56 kb/s jakie mam w domu wchodzi w sfere science-fiction.
Prosze wiec o rzetelna wypowiedz, a nie probe wmowienia mi ze nie rozumiem istoty server-side. Troche za dlugo sie w to bawie...
Zreszta, wczesniej nie chcailem o tym wspominac, cala sprawa przypomina mi sytuacje kiedy na tym forum tyle ze w sekcji dla klient sajdow ktorys z moderatorow probowal mi wmowic ze nie rozrozniam Javy od JS. Choc moim jedynym "bledem" bylo ze gdzies na poczatku wypowiedzi napisalem w skrocie myslowym "Java" bez "scriptu". Nie istotne bylo, ze sprawa ktora przedstawilem dotyczyla jak byk klienta (chodzilo o auto refersh przegladarki), w temacie napisalem skrot [js] i dzial byl cs. Teraz jest podobnie!!! Przeciez analizujac kod, widzimy ze sparwa nie dotyczy faktu ss czy cs, ale podejscia do funkcji czasu - w omawianym linku widocznie time jest stampowany na koniec, czyli kazde wywolanie funkcji time() niejako rozpoczyna nowy watek... Tyle ze nie widze w php.ini opcji sterujaca takim zachowaniem parsera. Jednak sami przyznacie ze takie podejscie jest logiczne i nie ma nic wspolnego z tym ze niby php wykonuje caly skrypt robi z tego pliczek tesktowy i wysyla to dopiero w calosci do klienta. Bo to nie prawda!!! Przeciez tyle sie mowi o dazeniu PHP do objektowosci, z Waszym podejsciem to ss to raczej nigdy PHP nie dogoni ASP...
http://www.cichos.pl/speed/indexa.php
Jeszcze ktos twierdzi ze nie mozna zmierzyc calkowitego czasu generowania strony? Wciaz sie pytam dlaczego nei dziala tak na kazdym serwerze? przynajmniej ja testujac dwa, jednego nie moge zmusic do takiego dzialania jak wyzej - po prostu zawsze zwraca mi tylko czas generacji na serwerze.
Jesli wam to pomoze zobaczcie info serwera:
http://www.cichos.pl/info.php
Co do porzedniej wypowiedzi: juz pisalem, to niemozliwe. Czemu? Bo mierzylem empirycznie (stoperem) czas generacji strony, jest praktycznie identyczny z tym jaki pokazuje wynik skryptu! Tak wiec idac tropem poprzedzajacej wypowiedzi Moderatora, musialbym zalozyc, ze 118 KB strony pojawia sie u mnie w ulamku sekundy, co na laczu 56 kb/s jakie mam w domu wchodzi w sfere science-fiction.
Prosze wiec o rzetelna wypowiedz, a nie probe wmowienia mi ze nie rozumiem istoty server-side. Troche za dlugo sie w to bawie...
Zreszta, wczesniej nie chcailem o tym wspominac, cala sprawa przypomina mi sytuacje kiedy na tym forum tyle ze w sekcji dla klient sajdow ktorys z moderatorow probowal mi wmowic ze nie rozrozniam Javy od JS. Choc moim jedynym "bledem" bylo ze gdzies na poczatku wypowiedzi napisalem w skrocie myslowym "Java" bez "scriptu". Nie istotne bylo, ze sprawa ktora przedstawilem dotyczyla jak byk klienta (chodzilo o auto refersh przegladarki), w temacie napisalem skrot [js] i dzial byl cs. Teraz jest podobnie!!! Przeciez analizujac kod, widzimy ze sparwa nie dotyczy faktu ss czy cs, ale podejscia do funkcji czasu - w omawianym linku widocznie time jest stampowany na koniec, czyli kazde wywolanie funkcji time() niejako rozpoczyna nowy watek... Tyle ze nie widze w php.ini opcji sterujaca takim zachowaniem parsera. Jednak sami przyznacie ze takie podejscie jest logiczne i nie ma nic wspolnego z tym ze niby php wykonuje caly skrypt robi z tego pliczek tesktowy i wysyla to dopiero w calosci do klienta. Bo to nie prawda!!! Przeciez tyle sie mowi o dazeniu PHP do objektowosci, z Waszym podejsciem to ss to raczej nigdy PHP nie dogoni ASP...
Re: [php] jak mierzyc dlugosc wykonywanai skrypu?
zeby obliczyc caly czas od zaczecia generowania kodu az po pokazanie sie na ekranie twojego monitora nie wystarczy sam php, bo on moze jedynie pokazac czas generowania kodu (zalezna od mozliwosci obliczeniowych serwera), a do tego trzeba dodac jeszcze czas przesylania kodu do przegladarki (liczy sie przepustowosc lacza), plus jeszcze czas wygenerowania strony w przegladarce (np. java script, css itp)...