Imenik članaka
Brzina je život; ako web stranica kasni i djelić sekunde, korisnici će se okrenuti i otići.
Zato HestiaCP Optimizacija OPcachea ključna je za uspjeh ili neuspjeh bilo koje web stranice koja se oslanja na PHP.
Što je OPcache?
OPcache je ugrađeni mehanizam za keširanje bajtkoda u PHP-u.
Njegova funkcija je jednostavna: kešira kompajlirani PHP skript u memoriju i izravno poziva keš prilikom ponovnog pristupa, umjesto ponovnog kompajliranja.
To poboljšava brzinu odgovora web stranice, smanjuje opterećenje CPU-a i trenutno ublažava pritisak na poslužitelj.
Prema službenoj PHP dokumentaciji:
"OPcache pruža značajna poboljšanja performansi smanjenjem vremena izvršavanja izbjegavanjem dupliciranja kompajliranja skripti."
Ukratko: OPcache je PHP akcelerator.
Zašto optimizirati OPcache u HestiaCP-u?

HestiaCP je lagana kontrolna ploča koju mnogi ljudi koriste za upravljanje VPS-om ili dediciranim serverima.
OPcache je omogućen prema zadanim postavkama, ali parametri su često konzervativni.
Bez prilagodbi, poboljšanje performansi bit će ograničeno.
na primjer:
Na poslužitelju s 4 jezgre i 8 GB memorije, zadana OPcache memorija je samo 64 MB, a broj predmemoriranih datoteka je samo 4000.
Ovo je za srednje veličine WordPress Za web stranicu to jednostavno nije dovoljno.
Rezultat je da se predmemorija stalno briše, što uzrokuje ponavljane fluktuacije performansi.
Provjerite trenutni status OPcachea
Pokrenite sljedeću naredbu:
php -i | grep opcache.enable
Vidjet ćete rezultate slične ovim:
- opcache.enable => Uključeno: To znači da je OPcache omogućen u PHP-FPM-u.
- opcache.enable_cli => Isključeno: Nije omogućeno u načinu rada naredbenog retka.
- opcache.enable_file_override => Isključeno: Funkcionalnost poništavanja datoteka nije omogućena.
To znači da iako OPcache već radi, još uvijek postoji prostor za optimizaciju.
Uredite PHP konfiguracijske datoteke
U HestiaCP-u, put do PHP konfiguracijske datoteke je obično:
/etc/php/8.x/fpm/php.ini
Za omogućavanje CLI načina rada:
/etc/php/8.x/cli/php.ini
Pronađite odjeljak [opcache] i dodajte ili izmijenite sljedeće parametre:
[opcache] ; 启用 OPcache opcache.enable=1 opcache.enable_cli=1 ; 内存与缓存设置 opcache.memory_consumption=256 opcache.interned_strings_buffer=16 opcache.max_accelerated_files=10000 ; 文件更新检测 opcache.validate_timestamps=0 opcache.revalidate_freq=60 ; 其他优化参数 opcache.save_comments=1 opcache.fast_shutdown=1 opcache.enable_file_override=1
Detalji parametara i logika optimizacije
opcache.memory_consumption=256
Dodjeljivanje 256 MB memorije OPcacheu prikladno je za srednje do velike web stranice.
Za male web stranice možete postaviti na 128 MB.opcache.interned_strings_buffer=16
Pruža predmemoriju stringova od 16 MB kako bi se smanjila upotreba dupliciranih stringova.opcache.max_accelerated_files=10000
Preporučuje se da maksimalni broj predmemoriranih datoteka bude najmanje 10 000 u WordPress + plugin okruženju.opcache.revalidate_freq=60
Datoteke se provjeravaju za ažuriranja svakih 60 sekundi kako bi se smanjio česti ulazno/izlazni promet.opcache.enable_cli=1
Omogućavanje CLI keširanja prikladno je za pokretanje alata naredbenog retka kao što su Artisan i WP-CLI.opcache.enable_file_override=1
Dopustite OPcacheu da preuzme predmemoriju datotečnog sustava, dodatno smanjujući pristup disku.- opcache.validate_timestamps=0
- Onemogući otkrivanje u stvarnom vremenuSmanjite I/O operacije datotečnog sustava i poboljšajte performanse.
Međutim, to znači da morate ručno izbrisati predmemoriju (ponovno pokrenuti PHP uslugu) nakon izmjene PHP datoteka.
Nakon izmjene konfiguracije, morate ponovno pokrenuti PHP servis da bi promjene stupile na snagu.
sudo systemctl restart php<版本>-fpmKombinacija ovih parametara omogućuje web stranici da ostane stabilna čak i pod visokom konkurentnošću.
Ponovno pokrenite PHP-FPM uslugu
Nakon što napravite promjene, ne zaboravite ponovno pokrenuti uslugu:
sudo systemctl restart php8.x-fpm
Zatim ga ponovno pokrenite:
php -i | grep opcache
Potvrđeno je da su parametri ažurirani.
Najbolje prakse za produkcijska okruženja
U produkcijskim okruženjima, optimizacija OPcachea uključuje više od samog podešavanja parametara; ona također uključuje sljedeće strategije:
1. Obrišite predmemoriju tijekom implementacije
Nakon svakog ažuriranja koda, OPcache se mora očistiti; u suprotnom se može učitati starija verzija.
U CI/CD skriptu možete dodati sljedeće:
<?php opcache_reset();
Alternativno, izvršite ga unutar procesa implementacije:
systemctl reload php8.x-fpm
2. Izbjegavajte često čišćenje
Prečesto brisanje predmemorije može dovesti do smanjenja performansi.
Preporučuje se čišćenje samo kada se kod ažurira, umjesto čišćenja u redovitim intervalima.
3. Pratite korištenje OPcachea.
Stopu pogodaka predmemorije možete provjeriti u stvarnom vremenu pomoću naredbe `php -i | grep opcache` ili instaliranjem dodatka Opcache Control Panel.
Stopa pogodaka veća od 95% ukazuje na razumnu konfiguraciju.
Prema službenim Zend testovima performansi, omogućavanje OPcachea može poboljšati brzinu izvršavanja PHP skripti do 3 puta i smanjiti korištenje CPU-a za 50%.
Ovo nije neka mistična teorija; to su čvrsti podaci.
Zaključak: Moji stavovi i ključni citati
Po mom mišljenju, OPcache je kao "turbopunjač" za web stranicu. Bez njega, PHP je kao automobil bez turbopunjača, radi sporo i troši gorivo.
Optimizacija OPcachea nije samo tehnički detalj, već i strateški izbor za rad web stranice.
Jer brzina je jednaka stopi konverzije, a performanse su jednake konkurentnosti.
Ključni citat: Budućnost web stranice ne leži u tome koliko je njezin kod otmjen, već u tome koliko brzo može reagirati, toliko brzo da korisnici nemaju vremena ni trepnuti.
Stoga prestanite dopuštati serverima da rasipaju resurse u neučinkovitim petljama.
Optimizirajte svoj HestiaCP OPcache sada i učinite da vaša web stranica leti.
Želite li da napišem najbolji predložak konfiguracije OPcachea za vaše produkcijsko okruženje, koji zatim možete izravno kopirati i koristiti u php.ini datoteci?
Blog Hope Chen Weiliang ( https://www.chenweiliang.com/ Članak "Kako optimizirati OPcache u HestiaCP-u? Opcode caching i kompajliranje PHP koda kako bi vaša web stranica letjela" podijeljen ovdje mogao bi vam biti koristan.
Dobrodošli da podijelite vezu ovog članka:https://www.chenweiliang.com/cwl-34197.html
