Ako nainštalovať Opcache na zlepšenie výkonu PHP v systéme Linux


PHP (Hypertext Preprocessor) je široko používaný skriptovací jazyk na strane servera známy svojou efektívnosťou pri vývoji webových aplikácií. S rastúcou zložitosťou webových aplikácií sa však optimalizácia výkonu stáva kľúčovou.

Jedným z najúčinnejších spôsobov zvýšenia výkonu PHP je použitie Opcache, ktoré ukladá do vyrovnávacej pamäte skompilovaný bajtový kód skriptov PHP, čím sa znižuje réžia načítavania a analýzy skriptov pri každej požiadavke.

Tento článok vás prevedie inštaláciou a konfiguráciou Opcache na zrýchlenie a optimalizáciu výkonu PHP v systéme Linux.

Čo je to Opcache?

Opcache je vstavaný mechanizmus ukladania operačných kódov do vyrovnávacej pamäte pre PHP, ktorý ukladá skompilovaný bajtový kód PHP skriptov do zdieľanej pamäte.

Keď sa skript PHP spustí, Opcache skontroluje, či je v pamäti dostupná skompilovaná verzia. Ak áno, Opcache obíde kroky analýzy a kompilácie, čo vedie k rýchlejšiemu vykonávaniu skriptu.

To výrazne zlepšuje časy odozvy a znižuje zaťaženie servera, čo z neho robí nevyhnutný nástroj na optimalizáciu aplikácií PHP.

Inštalácia Opcache v Linuxe

Pred inštaláciou je vhodné aktualizovať úložisko balíkov, aby ste sa uistili, že máte najnovšie informácie o balíkoch.

sudo apt update  [On Debian/Ubuntu]
sudo dnf update  [On RHEL/CentOS]

Ak používate systém založený na Debiane, ako je Ubuntu, môžete si nainštalovať Opcache prostredníctvom balíka php-opcache.

sudo apt install php-opcache

Ak používate systém založený na Red Hat, ako je CentOS, môžete nainštalovať Opcache pomocou nasledujúceho príkazu:

sudo yum install php-opcache

Po nainštalovaní Opcache môžete overiť jeho inštaláciu spustením:

php -m | grep opcache
OR
php -i | grep opcache

Ak vo výstupe vidíte opcache, znamená to, že Opcache je úspešne nainštalovaný.

Konfigurácia Opcache v Linuxe

Po nainštalovaní Opcache ho musíte nakonfigurovať v konfiguračnom súbore PHP (php.ini) na nasledujúcich miestach v závislosti od vašej inštalácie.

Umiestnenie súboru php.ini nájdete spustením:

php --ini

Na úpravu konfiguračného súboru použite textový editor (napr. Nano alebo vim):

sudo vi /etc/php.ini

Pridajte alebo upravte nasledujúce nastavenia Opcache:

; Enable Opcache
opcache.enable=1

; Set the memory size for the Opcache (e.g., 128MB)
opcache.memory_consumption=128

; Set the maximum number of scripts to cache
opcache.max_accelerated_files=10000

; Set the cache validity time in seconds
opcache.revalidate_freq=2

; Enable file validation for updated scripts
opcache.validate_timestamps=1

; Set the timeout for a request before it is terminated
opcache.max_file_size=2M

; Enable opcache for the CLI
opcache.enable_cli=1

Vysvetlenie nastavení:

  • opcache.memory_consumption: Množstvo pamäte alokovanej pre Opcache. Môžete to upraviť na základe pamäte RAM vášho servera.
  • opcache.max_accelerated_files: Maximálny počet PHP skriptov, ktoré Opcache uloží do vyrovnávacej pamäte.
  • opcache.revalidate_freq: Frekvencia (v sekundách), pri ktorej Opcache kontroluje aktualizácie skriptov.
  • opcache.validate_timestamps: Ak je povolené, Opcache skontroluje zmeny v skriptoch a zruší platnosť skriptov uložených vo vyrovnávacej pamäti, ak sa zmenili.
  • opcache.enable_cli: Povolí funkciu Opcache pre rozhranie príkazového riadka.

Po vykonaní zmien uložte súbor a reštartujte webový server Apache, aby sa zmeny prejavili.

sudo systemctl restart apache2
OR
sudo systemctl restart httpd

Ak používate Nginx, použite:

sudo systemctl restart nginx

Testovanie Opcache v Linuxe

Aby ste sa uistili, že Opcache funguje správne, môžete vytvoriť súbor PHP (info.php) s nasledujúcim obsahom v koreňovom adresári dokumentu vášho webového servera (napr. / var/www/html/).

<?php
phpinfo();
?>

Prístup k súboru cez webový prehliadač:

http://your_server_ip/info.php

Vo výstupe vyhľadajte časť „Ukladanie do vyrovnávacej pamäte operačného kódu“. Ak je Opcache nainštalovaná a nakonfigurovaná správne, mali by ste vidieť informácie o nastaveniach Opcache.

Monitorovanie Opcache v Linuxe

Na monitorovanie výkonu Opcache môžete použiť rôzne nástroje, ako napríklad opcache-gui, na vizualizáciu štatistík vyrovnávacej pamäte.

git clone https://github.com/amnuts/opcache-gui.git
sudo mv opcache-gui /var/www/html/

Prístup ku GUI vo vašom prehliadači:

http://your-server-ip/opcache-gui

Prípadne môžete použiť aj nástroje príkazového riadka na získanie podrobných informácií o výkone vyrovnávacej pamäte. Ak chcete napríklad zobraziť stav Opcache z príkazového riadka, môžete použiť nasledujúci príkaz:

php -i | grep opcache

Tento príkaz zobrazí informácie týkajúce sa Opcache, vrátane využitia pamäte a miery prístupu do vyrovnávacej pamäte.

Záver

Inštalácia a nastavenie Opcache je jednoduchý proces, ktorý môže výrazne vylepšiť vaše aplikácie PHP znížením réžie vykonávania skriptov a umožní vášmu webovému serveru efektívne spracovať viac požiadaviek, čo vedie k rýchlejšej odozve a vylepšeniu používateľov skúsenosti.