OPcache je modul Apache pro interpret PHP, který umožňuje zvýšit jeho výkon ukládáním předkompilovaných skriptů do sdílené paměti. Tímto způsobem PHP nemusí načítat a interpretovat stejný skript při každém požadavku.
Nejprve se připojte k serveru prostřednictvím připojení SSH. Pokud jste tak ještě neučinili, doporučujeme vám postupovat podle našeho průvodce, abyste se bezpečně připojili pomocí SSH. V případě lokálního serveru přejděte k dalšímu kroku a otevřete terminál svého serveru.
Povolení OPcache
Otevřete konfigurační soubor PHP pomocí následujícího příkazu.
Pokud je PHP interpretováno pomocí modulu Apache:
$ sudo nano /etc/php/7.2/apache2/php.ini
Pokud je PHP interpretováno prostřednictvím PHP-FPM / NGINX:
$ sudo nano /etc/php/7.2/fpm/php.ini
Chcete-li povolit použití OPcache, vše, co musíte udělat, je povolit související položku změnou následujícího řádku:
;opcache.enable=0
s tímto:
opcache.enable=1
odebrat; počáteční, pokud je přítomen.
V tomto okamžiku již bude OPcache povolena při restartování webového serveru:
Apache:
$ sudo service apache2 restart
PHP-FPM / NGINX:
$ sudo service nginx restart
Nyní, abyste zkontrolovali správné fungování OPcache, vytvořte soubor phpinfo.php ve složce, kde je váš web, a vložte do něj následující kód:
<?php
phpinfo();
?>
Potom uložte soubor a zobrazte jej v prohlížeči.
Pokud je přítomna sekce OPcache, jak můžete vidět na tomto obrázku, pak OPcache funguje správně.
Nyní se podíváme, jak konkrétně nakonfigurovat jednotlivé možnosti tohoto modulu.
Použitá paměť RAM
V tomto případě musíte najít právo mezi pamětí RAM, kterou bude OPCache používat, a požadovanou rychlostí. Rozšířená paměť nemusí nutně znamenat skutečné zlepšení výkonu, protože OPCache ukládá i zřídka používané instrukce. To bude mít za následek plýtvání přidělenou pamětí a následně žádný rozdíl ve výkonu.
Podle našeho průvodce se proto doporučuje změnit výchozí hodnotu (64 MegaBytes) pro obecné použití
;opcache.memory_consumption=64
do 128 megabajtů, následovně:
opcache.memory_consumption=128
Potom zkuste tuto hodnotu zvýšit ověřením výsledku z hlediska výkonu.
Počet skriptů, které mají být uloženy
Kromě dostupné paměti vám OPcache umožňuje nastavit počet skriptů pro ukládání do mezipaměti. Tato hodnota může být normálně ponechána jako výchozí (2000). Pokud se však návštěvnost vaší aplikace neblíží 100 %, můžete ji zkusit zvýšit podle svých potřeb zrušením komentáře na následujícím řádku:
;opcache.max_accelerated_files=2000
zvyšte hodnotu následovně:
opcache.max_accelerated_files=3000
pokoušíme se přiblížit míru požadavku 100 %:
Frekvence aktualizací
OPcache pravidelně kontroluje, zda byly uložené skripty aktualizovány. Dobu hodnocení lze nastavit změnou následující směrnice:
;opcache_revalidate_freq = 2
a výchozí hodnota (v sekundách):
opcache_revalidate_freq = 100
Jak použít změny
Pro potvrzení změn restartujte webový server.
Apache:
$ sudo service apache2 restart
NGINX:
$ sudo service nginx restart
V tomto okamžiku OPcache začne ukládat vaše skripty.