Page Load Time
Szervusztok!
Azon problémával fordulok hozzátok, hogy egy korábbi problémám kapcsán (lassú oldal betöltés) kerestem egy egyszerű kis php scriptet ami megmondja az oldal betöltési idejét íme:Az alábbi kód, ami példavideóban is igen kicsi volt nálam jelentős időt vesz igénybe hogy lefusson, közel 1 másodperces lefutási időt.
Gondolom nem olyan szép dolog ez a 1 millás ciklus, viszont ennek ellenére is ennek szépen gyorsan le kellene futnia, főleg ha volt rá példa is.
Mitől lehet ez? A gép teljesítménye szerintem kilőve mert 8gb-ram nem leterhelve proci is egy 4 magos amd phenom 2.2 ghz-n (4 mag) átlag 5-7%os kihasználtsággal (php script lefuttatásakor 20-50%). Tehát nem meríti ki a gép teljes igényét viszont még is látványosan meghúzza a procit az a kis egyszerű kód.
Ölteitek, segítségetek előre is köszönöm.
Szerkesztve:
Megnéztem egy külső webszerveren, ott 4 másodpercet vett igénybe a kód lefutása. Létezik hogy, egyes kódok (ha egy millaszor kell nekik lefutni) ilyen irdatlan mértékben lassan fussanak le?
Orvoslatként mit tehet az ember? Főleg ha egyes ehhez hasonló kódokat többször is más más felhasználók futtatnának? Atomerőmű vásárlása?
Köszönöm.
■ Azon problémával fordulok hozzátok, hogy egy korábbi problémám kapcsán (lassú oldal betöltés) kerestem egy egyszerű kis php scriptet ami megmondja az oldal betöltési idejét íme:
<?php
$start = microtime(true);
$y = 0;
for($x=0;$x<=1000000;$x++)
{
$y = $x;
$y *= pi();
$y *= (pi() * 2);
}
$end = number_format((microtime(true) - $start), 2);
echo $end;
?>
Gondolom nem olyan szép dolog ez a 1 millás ciklus, viszont ennek ellenére is ennek szépen gyorsan le kellene futnia, főleg ha volt rá példa is.
Mitől lehet ez? A gép teljesítménye szerintem kilőve mert 8gb-ram nem leterhelve proci is egy 4 magos amd phenom 2.2 ghz-n (4 mag) átlag 5-7%os kihasználtsággal (php script lefuttatásakor 20-50%). Tehát nem meríti ki a gép teljes igényét viszont még is látványosan meghúzza a procit az a kis egyszerű kód.
Ölteitek, segítségetek előre is köszönöm.
Szerkesztve:
Megnéztem egy külső webszerveren, ott 4 másodpercet vett igénybe a kód lefutása. Létezik hogy, egyes kódok (ha egy millaszor kell nekik lefutni) ilyen irdatlan mértékben lassan fussanak le?
Orvoslatként mit tehet az ember? Főleg ha egyes ehhez hasonló kódokat többször is más más felhasználók futtatnának? Atomerőmű vásárlása?
Köszönöm.
PHP
A
pi()
függvényt ciklusonként kétszer futtatod.Ha például a
pi()
értékét kiteszed egy-egy változóba, (nálam legalábbis) 40% gyorsulást lehet elérni:$ketpi = $pi * 2;
for($x=0;$x<=1000000;$x++)
{
$y = $x;
$y *= $pi;
$y *= $ketpi;
}
PHP7 alatt egyébként a fenti fele annyi idő alatt lefut, mint 5.6-ban.
Nagyon szépen köszönöm
Még annyi érdekelne, hogy ugyan ez a kód csak azért kellett, hogy egy másik hibámat tudjam csekkolni vele, sebességoptimalizálási szempontból mit érdemesebb használni? Arrayeket vagy sima változókat? Életemben először futottam bele, hogy 'hibátlanul' írók kódot csak épp nem optimálisan (vagy legalább is eddig nem okozott gondot x).
Ha egy kicsit bővebben szeretnék írni róla akkor:
Van egy adatlap, benne sok sok objektum töltődik be, mindegyiknek van menüje jobb klikk esetén, illetve ha ráviszik az egeret akkor egy kis bubi tartalommal.
Ezt az oldal betöltéskor mind mind betöltődik... különböző vizsgálatok futnak le hogy mikor mit kell betöltsön a menürészébe és a buborékjába. Kiszűrni úgy gondoltam, hogy amikor lenyomom a jobb klikket töltődik be a tartalom, vagy amikor az egér az objektum felé ér akkor töltődik be a buborék tartalma. Egyenlőre viszont száraz teszt gyanánt kilőttem totál a menü és a bubi betöltést... Látványosan ugrott a sebesség de még nem kellően, az objektumok önmagukban is elég sok ellenőrzésen esnek át amikor betöltődnek, jó pár sql lekérdezéssel. Ott bizonyos paramétereket tömbbe töltöttem nem pedig sima változóba. Előfordulhat hogy egy tömb kevésbé optimális ilyen esetekben?
Köszönöm.
Sajnos konkrétumok nélkül
Mennyi idő alatt töltődik be az oldalad? Az sql tábláid indexelve vannak rendesen?
xdebug