Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Petua pengoptimuman untuk konfigurasi OPcache dalam pengoptimuman prestasi aplikasi PHP

Petua pengoptimuman untuk konfigurasi OPcache dalam pengoptimuman prestasi aplikasi PHP

WBOY
WBOYasal
2024-05-01 09:03:01915semak imbas

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

PHP 应用程序性能优化中 OPcache 配置的优化技巧

petua pengoptimuman prestasi PHPpengoptimuman prestasi PHP

untuk petua pengoptimuman prestasi PHP

Pengenalan

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

3 Dayakan opcache.revalidate_freq

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 配置:

  1. 创建一个名为 phpinfo.php 的 PHP 文件,其中包含 phpinfo(); 函数。
  2. 在终端中运行以下命令获取当前 OPcache 配置:
rrreee
  1. 根据上述优化技巧调整 /etc/php/7.4/opcache.ini 配置文件中的 OPcache 设置。
  2. 重新启动 PHP-FPM 服务:
rrreee
  1. 再次运行 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

  2. 4 Lumpuhkan opcache.optimization_level
🎜🎜OPcache menyediakan tahap pengoptimuman bytecode yang berbeza, tetapi pengoptimuman ini mungkin mengurangkan sedikit prestasi. Dalam kebanyakan kes, adalah disyorkan untuk melumpuhkan pilihan ini melainkan aplikasi memerlukan pengoptimuman secara khusus. 🎜rrreee🎜🎜Kes praktikal🎜🎜🎜Kami mengambil aplikasi PHP mudah sebagai contoh untuk menunjukkan cara mengoptimumkan konfigurasi OPcache dalam persekitaran Linux: 🎜
  1. Buat fail bernama phpinfo.php Fail PHP yang mengandungi fungsi phpinfo();. 🎜
  2. Jalankan arahan berikut dalam terminal untuk mendapatkan konfigurasi OPcache semasa: 🎜🎜rrreee
    1. Laraskan /etc/php/7.4/opcache.ini Tetapan OPcache dalam fail konfigurasi. 🎜
    2. Mulakan semula perkhidmatan PHP-FPM: 🎜🎜rrreee
      1. 🎜Jalankan 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!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn