Haszprus

Mennyi ideig generálja a szerver a lapodat?

©   Haszprus   |   fejlesztés howto php

Ha le akarod mérni, tedd be a lapod elejére ezt:

ob_start();

function microtime_float() {
   list($usec, $sec) = explode(' ', microtime());
   return ((float)$usec + (float)$sec);
}

$time_start = microtime_float();

A végére pedig ezt:

$time_end = microtime_float();
$time = $time_end - $time_start;

echo 'Lapgenerálás: ' . $time . 'mp';

ob_end_flush();

Ez a kód azért jó, mert az ob_startnak köszönhetően nem számítja bele az időbe a lap letöltődését. Enélkül amit kapnál, az függne a szabad sávszélességedtől. És az nem lenne jó.

(A kód nagyrészt innen származik, de a dolog értelmét szerintem az ob_start - ob_end_flush kiegészítés adja, anélkül a script helyett szinte a saját sávszélességedet méred.)

RSS: hozzászólások ehhez a bejegyzéshez 7 hozzászólás

Szólj hozzá Te is!

naja, sokan nem használják, pedig meglepő dolgokat tapasztaltam amikor először kezdtem azzal foglalkozni, hogy igenis gyorsítsak a lapok letöltődésén a lekérdezés optimizálással...

Ezt anno én is így oldottam meg, csak én mellette rögzítettem egy logfájlba, átlagszámítás végett

na most nekem olyan vagy, hogy ehhez a poszthoz a főoldal 4 hszt mutat, itt bent meg már csak kettőt... hogy is van ez?

átírtam egy néhány marhanagy, ráadásul változó feltételekkel dolgozó queryt és kimaradt egy distinct, javítva, thx.

meg mindig fura, fooldalon 6 hsz, itt meg 4

szerk.: frissitettem, es rendbejott, valszeg fel oraja hoztam be az oldalt.

lehet hogy cache-ből nézted mert nem csináltam semmit és most jó
...
ok

Biztos, hogy kell a bufferelés? Szerintem nem, ugyanis az oldal a kapcsolatodtól függetlenül generálódik le, ehhez semmi köze az adat elküldésének. Amikor a script először kiírható részhez ér (és nincs bekapcsolva a bufferelés), a webserver elküldi a fejlécet és elkezdi küldeni az adatokat - ilyenkor szokott a cannot modify header information hibaüzenet jönni.
De a script futása nem áll meg, ha a felhasználónak lassú kapcsolata van! Jól nézne ki, ha a 28k-s nettel nézők oldalait fél percig generálná a server . A PHP legenerálja az oldalt, amilyen gyorsan csak tudja, és amint küldhető belőle az első karakter, töltheti a felhasználó. Szerintem így logikus .
Hozzászólásod:


Nem vagy bejelentkezve, de...

A)
hozzászólhatsz regisztrálatlanul...

B)
ha regisztrálva vagy, bejelentkezhetsz...