Muhtemelen bildiğiniz gibi, Xdebug 2. * sürümünden beri bellek profili oluşturma desteğini bıraktı. Lütfen burada "kaldırılan işlevler" dizesini arayın: http://www.xdebug.org/updates.php
Kaldırılan işlevler
Düzgün çalışmadığı için Bellek profili oluşturma desteği kaldırıldı.
Bu yüzden başka bir araç denedim ve benim için iyi çalıştı.
https://github.com/arnaud-lb/php-memory-profiler
Bunu etkinleştirmek için Ubuntu sunucumda yaptığım şey:
sudo apt-get install libjudy-dev libjudydebian1
sudo pecl install memprof
echo "extension=memprof.so" > /etc/php5/mods-available/memprof.ini
sudo php5enmod memprof
service apache2 restart
Ve sonra kodumda:
<?php
memprof_enable();
memprof_dump_callgrind(fopen("/tmp/callgrind.out", "w"));
Sonunda callgrind.out
dosyayı KCachegrind ile açın
Google gperftools'u kullanma (önerilir!)
Öncelikle en son paketi buradan indirerek Google gperftools'u yükleyin : https://code.google.com/p/gperftools/
Sonra her zamanki gibi:
sudo apt-get update
sudo apt-get install libunwind-dev -y
./configure
make
make install
Şimdi kodunuzda:
memprof_enable();
memprof_dump_pprof(fopen("/tmp/profile.heap", "w"));
Ardından terminalinizi açın ve başlatın:
pprof --web /tmp/profile.heap
pprof , mevcut tarayıcı oturumunuzda aşağıda gösterildiği gibi yeni bir pencere oluşturacaktır:
Xhprof + Xhgui (bence hem cpu hem de bellek profili için en iyisi)
İle Xhprof ve Xhgui o Sorununuz şu anda ise siz de ya da sadece bellek kullanımı CPU kullanımını profil olabilir. Çok eksiksiz bir çözümdür, size tam kontrol sağlar ve günlükler hem mongo'da hem de dosya sisteminde yazılabilir.
Daha fazla ayrıntı için cevabıma buradan bakın .
Siyah ateş
Blackfire, SensioLabs, the Symfony2'nin adamları https://blackfire.io/ tarafından hazırlanan bir PHP profilleyicisidir.
Sanal makinenizi kurmak için kukla kullanıyorsanız , desteklendiğini bilmekten mutluluk duyacaksınız ;-)