[Linux-programlama] Re: php: include isleminin performansi

---------

[Linux-programlama] Re: php: include isleminin performansi

From: Mustafa Unal <mustafaunl_at_hotpop.com>
Date: Tue, 08 Jan 2008 01:10:48 +0200
Message-ID: <4782B178.3080806@hotpop.com>

Anýl KARADAÐ wrote:
> yazýlan tum cevaplar icin tesekkur ederim. bahsedilen cogu seye bende
> katiliyorum. duzenli kod parcalarýmýn olmasýný bende istiyorum, ve
> inceledigim bir projede bekliyorum.
>
> hiz benim ilk tercihim degil elbetteki. sadece hýzý kotu etkileyen bir
> etmen daha yaratmamak istiyorum.
>
> "php tunning" i inceleyecegim
>
> iyi calismalar
>
> Pzt, 2008-01-07 tarihinde 00:42 +0200 saatinde, Rüþtü Derici yazdý:
>
>> Bir web sayfasýnýn kabuledilebilir açýlma hýzý..web hizmetinin önemine
>> göre 7-15 saniye olabilir ..
>> Bunu baz alarak include 'lu ve include'suz benchmarklar yapabilirsiniz..
>>
>> ama þunu unutmamak gerekir ..bir projenin sadece hýzlý çalýþmasý yetmez..
>> deðiþtirilebilir ve daha da önemlisi geliþtirilebilir olmalýdýr..
>> dolayýsýyla projenizi bir kaðýt üzerinde parçalara bölüp bu parçalarý
>> ayrý ayrý projecikler gibi
>> düþünerek bütüne yaklaþmak ..daha sonraki zahmetlerinizi azaltacaktýr..
>>
>> ayrýca tekrarlý kodlardaki hata bulabilme oraný organize bir þekilde
>> birbirinden ayrýþtýrýlmýþ dosyalara
>> nazaran daha düþük olacaktýr..
>>
>> Olaya bir de bu açýdan bakarak kayýp kazanç hesabýnýzý yapabilirsiniz..
>>
>> Ve en önemli durum da geliþtiricinizi deðiþtirdiðinizde yeni gelen
>> kiþinin tüm kodu hatmetmek yerine
>> ana kýsma bakarak projenin gidiþatý hakkýnda fikir sahibi olmasý gerekir..
>> Bu da ancak doðru bir modülarite ile mümkün olabiliyor..
>> Yani ya include ile fonksyonlarýn ayrýþtýrýlmasý
>> yada php'nin object oriented yapýsýna uygun bir aðaçta iþlerin toparlanmasý
>> bir projenin olmazsa olmazlarýndan biri..
>> tabi tek sayfada herþeyi halledebileceðiniz basit iþler için bu
>> söylediðimin tam tersi çoðunlukla geçerli olacaktýr..
>> ama oradaki include iþleminde kaybedeceðiniz zaman zaten mikro saniye
>> düzeyinde olur :D
>>
>> Sevgiler,
>> Rüþtü
>>
>>
>>
>
>
> _______________________________________________
> Linux-programlama mailing list
> Linux-programlama_at_liste.linux.org.tr
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>
>
Bu soru ilginç geldi ve bir test ediyim dedim denediðim sistem :
Apache/2.2.3 PHP/5.2.1 kernel 2.6.20 -generic kernel Ubuntu 7.04 feisty
<?php
$starttime = microtime();
$startarray = explode(" ", $starttime);
$starttime = $startarray[1] + $startarray[0];
$endtime = microtime();
$endarray = explode(" ", $endtime);
$endtime = $endarray[1] + $endarray[0];
$totaltime = $endtime - $starttime;
$totaltime = round($totaltime,5);
echo "This page loaded in $totaltime seconds.";
?>
sayfaya eklemek üzere sýrf comment içeren dosya hazýrladým. bundaki
amacým ise phpnin iþlem yapmadan sadece dosyayý okumasýydý.
sadece benchmark sayfasýný çalýþtýrdým sayfa 0,00007 saniyede
hazýrlandý. sonra ilk include'u ekledim php sayfasý 0.00025 saniyde
hazýrlandý ama ayný dosyayý birkaç kere istediðimde bu süre 0.001
saniyeye kadar çýktý ardýndan harddiskle iþlem yapýnca dosya arama bu
süre 0.01408 saniyeye kadar çýktý sayfaya kinci includeu eklediðimde
0.00076 saniye üçüncü includeu eklediðimde 0.00095 saniyeye kadar çýktý.
ve sayfayý tekrar tekrar istediðimde bu süre 0.1 saniyeye kadar çýktý.
Asýl ilginç sonuç ise þuydu bu sayfalarý include etmeden benchmark
sayfasýna direkt olarak yazdýðýmda ise sayfa yükleme süresi yine
0,00007 saniye idi. yani bu süre artýþlarýna include neden oluyordu yani
üç include ile sayfa 13 kat yavaþlamýþtý.

Þimdi burada herkezin oturup include benchmarký yapmasý abes olur
sonuçta bu kullanýlan kernela kernelýn harddisk ve chipset desteði o
anda serverda host edilen site sayýsýna ve o anda bu web sitelerine
eriþen kullanýcý sayýsý ortam sýcaklýðý sistem yöneticisinin bilgisi
gibi. o kadar çok deðiþkene baðlý ki. Sadece genel bilgi Include
gerçekten sayfayý yavaþlatýyor. O yüzden php önbellekleme kullanýn.

0.00076

_______________________________________________
Linux-programlama mailing list
Linux-programlama_at_liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama
Received on Tue 08 Jan 2008 - 00:40:02 EET

---------

Bu arsiv hypermail 2.2.0 tarafindan uretilmistir.