PHP ialah bahasa skrip bahagian pelayan yang digunakan secara meluas dalam pembangunan web Ia cekap, mudah dan mudah dipelajari Ia digunakan secara meluas dalam pembangunan tapak web, aplikasi web dan perisian bahagian pelayan. Pemantauan prestasi aplikasi ialah topik yang sangat penting untuk aplikasi sedemikian kerana ia membantu pembangun mencari kesesakan prestasi dalam aplikasi mereka dan dengan itu meningkatkan prestasi aplikasi mereka. Artikel ini akan memperkenalkan cara melaksanakan pemantauan prestasi aplikasi dalam PHP, dan menyediakan beberapa alatan dan teknik untuk membantu pembangun PHP menyelesaikan masalah.
1. Isu prestasi PHP
Sebelum memantau prestasi aplikasi, kita perlu memahami isu prestasi PHP. Isu prestasi dalam PHP boleh disebabkan oleh pelbagai sebab, termasuk tetapi tidak terhad kepada:
Masalah ini akan menyebabkan kemerosotan prestasi aplikasi, jadi kami perlu menggunakan beberapa alat dan teknik untuk membantu kami mencari dan menyelesaikan masalah ini.
2. Alat pemantauan prestasi aplikasi PHP
Xdebug ialah lanjutan PHP yang boleh menyediakan beberapa fungsi berguna apabila PHP sedang berjalan termasuk analisis kod, liputan kod, penyahpepijatan, analisis prestasi dan banyak lagi. Dari segi analisis prestasi, Xdebug boleh menyediakan pengesanan aplikasi PHP dan pertanyaan pangkalan data, dan memaparkan masa pelaksanaan dan jumlah memori yang digunakan oleh setiap fungsi.
Berikut ialah langkah-langkah untuk memasang Xdebug pada Ubuntu:
Pasang Xdebug:
sudo apt-get install php-xdebug
Edit fail konfigurasi Xdebug:
sudo vim /etc/php/7.2/mods-available/xdebug.ini
Tambah yang berikut:
zend_extension=xdebug.so
xdebug.default_enable=1
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_host=127.0.0.1 xdebug.remote_autostart=1
xdebug.profiler_enable_trigger=1
xdebug.profiler_output_dir="/tmp"
xdebug.profiler_output_name="cachegrind.out.%t.%p"
Mulakan semula Apache:
Selepas pemasangan dan konfigurasi selesai, kami boleh menggunakan Xdebug untuk menganalisis prestasi aplikasi. Berikut ialah contoh yang melibatkan pertanyaan data:
xdebug_start_trace();
2. ..
3. Hentikan pengesanan
xdebug_stop_trace();
Penjejakan prestasi akan merekodkan semua pertanyaan SQL dan kami boleh menggunakan KCacheGrind untuk melihat maklumat ini.
Profil PHPProfil PHP ialah sambungan lain dengan fungsi yang serupa dengan Xdebug Ia boleh memberikan masa pelaksanaan setiap fungsi, bilangan panggilan bagi setiap fungsi dan bilangan panggilan bagi setiap fungsi Maklumat seperti jumlah memori yang digunakan oleh setiap fungsi. Tidak seperti Xdebug, dalam Profil PHP, kita perlu menggunakan sambungan tambahan untuk mendayakan fungsi analisis prestasi.
Pasang Profil PHP:
sudo apt-get install php-pear
sudo pecl install -f xhprof
sudo vim /etc/php/7.2/cli/php.ini
extension=xhprof.so
Mulakan semula Apache:
sudo service apache2 restart
Selepas pemasangan dan konfigurasi selesai, kami boleh menggunakan Profil PHP untuk menganalisis prestasi aplikasi. Sama seperti Xdebug, kami perlu menambahkan kod penjejakan prestasi pada kod, seperti berikut:
1 Dayakan fungsi penjejakan Profil PHP:
. 2. Kod yang memerlukan penjejakan prestasi
...
3. Hentikan penjejakan
$xhprof_data = xhprof_disable();
Kemudian, kita boleh gunakan Sebarang alat yang menyokong format data xhprof boleh digunakan untuk melihat maklumat ini.
3. Semak reka bentuk kod dan pertanyaan pangkalan data
Selain menggunakan alatan yang diperkenalkan di atas, kami juga boleh menemui kesesakan prestasi daripada aspek reka bentuk kod dan pertanyaan pangkalan data.
Apabila mencari masalah dalam reka bentuk kod, kita perlu mencari logik dan cabang berulang atau kompleks dalam kod untuk menjadikan kod lebih jelas dan mudah, seterusnya meningkatkan kebolehselenggaraan dan prestasi kod.
Apabila mencari masalah dengan pertanyaan pangkalan data, kita perlu menyemak sama ada pertanyaan itu perlu, sama ada terdapat pertanyaan pendua yang tidak perlu, sama ada terdapat sintaks pertanyaan yang salah, dan sama ada indeks yang betul digunakan, dsb.
4. Ringkasan
Pemantauan prestasi aplikasi ialah bahagian penting dalam sebarang proses pembangunan. PHP adalah cekap, ringkas dan mudah dipelajari, tetapi ia juga memerlukan pemantauan prestasi aplikasi untuk mencari masalah prestasinya. Artikel ini memperkenalkan beberapa alat dan teknologi pemantauan prestasi aplikasi PHP, termasuk Xdebug, Profil PHP, dsb., dengan harapan dapat membantu pembangun PHP.
Atas ialah kandungan terperinci Bagaimana untuk memantau prestasi aplikasi dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!