Saya ingin mengaktifkan opcache preloading ( RFC ) di server produksi saya menggunakan PHP 7.4. Saya menggunakan Symfony , tetapi ini berlaku untuk semua PHP.
php
preloading
opcache
php-7.4
emix
sumber
sumber
Jawaban:
Pertama-tama Anda harus menambahkan:
untuk Anda
php.ini
Kemudian dalam skrip PHP Anda, Anda harus memasukkan
opcache_compile_file($file);
setiap file yang ingin Anda muat.sumber
Menurut posting blog ini tampaknya sepele. Rupanya Symfony sejak 4.4 menghasilkan skrip preload yang harus diatur dalam
php.ini
:Saya melakukan beberapa tes di lingkungan Docker lokal saya dan begini caranya:
PHP 7.3 tanpa OPcache (saat ini)
PHP 7.4 tanpa OPcache
PHP 7.4 dengan OPcache, tanpa preloading (Apache + modphp)
PHP 7.4 dengan OPcache, tanpa preloading (nginx + php fpm)
Sayangnya saya tidak dapat mengaktifkan preloading :( Saya menemukan kesalahan berikut (di Apache + Mod dan Nginx + FPM):
Fitur ini terlihat seperti WIP . Saya akan memvalidasi ulang jawaban ini ketika saya dapat menggunakan hal preloading ini. Secara keseluruhan saya cukup terkesan, kinerja + 30% hanya dengan meningkatkan dari PHP
7.3
ke7.4
.sumber