Php file_exists ile CPU yükü

3 Cevap php

i dakikada, yüksek yük cpu httpd isteği ile bir sitenin sahibi. Ben her httpd istek üzerine "file_exists" kullanımı fark ettik. Kadar bu işlevi ağır mı?

3 Cevap

Bu fonksiyon, sadece bir dosya var ve kontrol edecek - hangi diske bir erişim anlamına gelir (which might take a little time, but not that much either)

Başvurunuzu dikkate alındığında muhtemelen her istek için okumak gerekir (if not hundreds) PHP dosyaların onlarca, yapılır, ben bir file_exists herhangi bir fark olduğunu sanmıyorum.

(Well, at least, as long as your are checking for a file on a local disk -- not going through any network drive or anything like that)


As a sidenote : if you want to identify where CPU is spend in your PHP scripts, you might be interested by the Xdebug extension, which provides a profiling functionnality.

Ben çok uzun olduğu, bir süre önce verdiği bu cevabı okuyabilirsiniz: How can I measure the speed of code written in php? -- I won't copy-paste it here.

Optimizing Kohana-based Websites for Speed and Scalability: Ayrıca sorunun (there is a section where I wrote about Xdebug and profiling) benim cevap okumak isteyebilirsiniz

, Gerçekçi olmak 'darboğaz tahmin' oynarken oldukça sonuçsuz bir görev olması muhtemeldir - Böyle Zend Studio yerleşik biri olarak, bir profiler kullanarak öneriyoruz.

File_exists sonucu ağır DB gibi php's stat cache .. alanların cpu büyük tüketici olma eğilimindedir önbelleğe özellikle bu yana, genellikle çok ucuz.

app hangi parçası, burada bazı örnekler çok zaman kadar kullanarak belirlemek için bazı profil deneyin:

http://www.ibm.com/developerworks/opensource/library/os-php-fastapps2/