Dengan mengoptimumkan konfigurasi OPcache, prestasi aplikasi PHP boleh dipertingkatkan. Pengoptimuman termasuk: menetapkan saiz opcache.memory_consumption yang munasabah, meningkatkan nilai opcache.max_accelerated_files, mendayakan opcache.revalidate_freq, melumpuhkan opcache.optimization_level
petua pengoptimuman prestasi PHPpengoptimuman prestasi PHP
untuk petua pengoptimuman prestasi PHPPengenalan
OPcache ialah Alat pengoptimuman untuk aplikasi PHP yang meningkatkan prestasi aplikasi dengan menyimpan kod bait PHP yang disusun. Dengan mengoptimumkan konfigurasi OPcache, anda boleh meningkatkan dengan ketara kelajuan pelaksanaan aplikasi PHP anda. Petua pengoptimuman Memori yang lebih kecil akan menghasilkan nisbah hit cache yang rendah, manakala memori yang lebih besar akan menyebabkan mesin kehabisan memorinya lebih awal. Bergantung pada saiz dan kekerapan penggunaan aplikasi, adalah penting untuk menetapkan nilai ini dengan sewajarnya.
// 示例配置:为应用程序分配 64MB 内存 opcache.memory_consumption=64
2. Tingkatkan nilai opcache.max_accelerated_files
opcache.max_accelerated_files
mengehadkan bilangan fail yang boleh dicache oleh OPcache. Nilai yang lebih kecil boleh mengakibatkan pembersihan cache fail yang kerap, manakala nilai yang lebih besar boleh mengakibatkan penggunaan memori yang berlebihan. Bergantung pada kerumitan aplikasi anda, laraskan nilai ini kepada titik imbangan. // 示例配置:允许 OPcache 缓存多达 10000 个文件
opcache.max_accelerated_files=10000
opcache.memory_consumption
设置 OPcache 用于存储缓存字节码的内存大小。内存较小会导致缓存命中率低,而内存较大则会导致机器内存过早耗尽。根据应用程序的大小和使用频率,合理设置此值非常重要。
// 示例配置:每 30 秒检查文件更新 opcache.revalidate_freq=30
2. 提高 opcache.max_accelerated_files 数值
opcache.max_accelerated_files
限制了 OPcache 可以缓存的文件数。较小值会导致频繁的文件缓存清除,而较大值则可能导致内存消耗过高。根据应用程序的复杂性,适当调整此值至一个平衡点。
// 示例配置:禁用字节码优化 opcache.optimization_level=0
3. 启用 opcache.revalidate_freq
opcache.revalidate_freq
设置 OPcache 定期检查缓存文件的修改日期的间隔。启用此功能可确保缓存中的文件是最新的,但也要注意它会增加 CPU 的开销。根据应用程序的修改频率,明智地选择此值。
php -i | grep opcache
4. 禁用 opcache.optimization_level
OPcache 提供了不同的字节码优化级别,但这些优化可能会略微降低性能。大多数情况下,建议禁用此选项,除非应用程序特别需要优化。
systemctl restart php-fpm
实战案例
我们以一个简单的 PHP 应用程序为例,展示如何在 Linux 环境中优化 OPcache 配置:
phpinfo.php
的 PHP 文件,其中包含 phpinfo();
函数。/etc/php/7.4/opcache.ini
配置文件中的 OPcache 设置。再次运行 phpinfo.php
opcache.revalidate_freq
Tetapkan selang waktu OPcache menyemak tarikh pengubahsuaian fail cache secara berkala. Mendayakan ciri ini memastikan bahawa fail dalam cache adalah terkini, tetapi sedar bahawa ia meningkatkan overhed CPU. Pilih nilai ini dengan bijak berdasarkan kekerapan aplikasi anda diubah suai. rrreee
phpinfo.php
Fail PHP yang mengandungi fungsi phpinfo();
. 🎜/etc/php/7.4/opcache.ini
Tetapan OPcache dalam fail konfigurasi. 🎜phpinfo.php
sekali lagi untuk melihat kesan pengoptimuman OPcache. 🎜🎜Dengan melaksanakan petua pengoptimuman ini, anda boleh meningkatkan prestasi aplikasi PHP anda dengan ketara dan mengurangkan beban pada pelayan anda. 🎜🎜🎜Atas ialah kandungan terperinci Petua pengoptimuman untuk konfigurasi OPcache dalam pengoptimuman prestasi aplikasi PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!