Rakstu katalogs
Ātrums ir dzīve; ja vietne atpaliek pat par sekundes daļu, lietotāji apgriezīsies un aizies.
Tāpēc HestiaCP OPcache optimizēšana ir ļoti svarīga jebkuras vietnes, kas balstās uz PHP, panākumiem vai neveiksmēm.
Kas ir OPcache?
OPcache ir iebūvēts baitkoda kešatmiņas dzinējs PHP.
Tās funkcija ir vienkārša: saglabāt kompilēto PHP skriptu kešatmiņā un, piekļūstot tam vēlreiz, izsaukt kešatmiņu, nevis veikt atkārtotu kompilāciju.
Tas uzlabo vietnes reakcijas ātrumu, samazina procesora slodzi un uzreiz mazina servera slodzi.
Saskaņā ar oficiālo PHP dokumentāciju:
"OPcache nodrošina ievērojamus veiktspējas uzlabojumus, samazinot izpildes laiku, izvairoties no skriptu kompilācijas dublēšanās."
Īsāk sakot: OPcache ir PHP paātrinātājs.
Kāpēc optimizēt OPcache programmā HestiaCP?

HestiaCP ir viegls vadības panelis, ko daudzi cilvēki izmanto VPS vai speciālu serveru pārvaldībai.
OPcache pēc noklusējuma ir iespējots, taču parametri bieži vien ir konservatīvi.
Bez korekcijām veiktspējas uzlabojums būs ierobežots.
piemēram:
Serverī ar 4 kodoliem un 8 GB atmiņu noklusējuma OPcache atmiņa ir tikai 64 MB, un kešatmiņā saglabāto failu skaits ir tikai 4000.
Tas ir paredzēts vidēja izmēra WordPress Tīmekļa vietnei ar to vienkārši nepietiek.
Rezultātā kešatmiņa tiek pastāvīgi notīrīta, kā rezultātā veiktspēja atkārtoti svārstās.
Pārbaudiet pašreizējo OPcache statusu
Palaidiet šādu komandu:
php -i | grep opcache.enable
Jūs redzēsiet līdzīgus rezultātus:
- opcache.enable => Ieslēgts: Tas nozīmē, ka OPcache ir iespējots PHP-FPM.
- opcache.enable_cli => Izslēgts: Nav iespējots komandrindas režīmā.
- opcache.enable_file_override => Izslēgts: Failu ignorēšanas funkcionalitāte nav iespējota.
Tas nozīmē, ka, lai gan OPcache jau darbojas, joprojām ir iespējams optimizēt.
Rediģēt PHP konfigurācijas failus
HestiaCP PHP konfigurācijas faila ceļš parasti ir:
/etc/php/8.x/fpm/php.ini
Lai iespējotu CLI režīmu:
/etc/php/8.x/cli/php.ini
Atrodiet sadaļu [opcache] un pievienojiet vai modificējiet šādus parametrus:
[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
Parametru detaļas un optimizācijas loģika
opcache.memory_consumption=256
256 MB atmiņas piešķiršana OPcache ir piemērota vidēja un liela izmēra tīmekļa vietnēm.
Mazām tīmekļa vietnēm to var iestatīt uz 128 MB.opcache.interned_strings_buffer=16
Nodrošina 16 MB virkņu kešatmiņu, lai samazinātu dublētu virkņu izmantošanu.opcache.max_accelerated_files=10000
WordPress + spraudņu vidē ieteicamais maksimālais kešatmiņā saglabāto failu skaits ir vismaz 10 000.opcache.revalidate_freq=60
Faili tiek pārbaudīti ik pēc 60 sekundēm, lai samazinātu biežu ievades/izvades darbību skaitu.opcache.enable_cli=1
CLI kešatmiņas iespējošana ir piemērota komandrindas rīku, piemēram, Artisan un WP-CLI, palaišanai.opcache.enable_file_override=1
Ļaujiet OPcache pārņemt failu sistēmas kešatmiņu, vēl vairāk samazinot piekļuvi diskam.- opcache.validate_timestamps=0
- Atspējot reāllaika noteikšanuSamaziniet failu sistēmas ievadizvadi un uzlabojiet veiktspēju.
Tomēr tas nozīmē, ka pēc PHP failu modificēšanas kešatmiņa ir jānotīra manuāli (jārestartē PHP pakalpojums).
Pēc konfigurācijas modificēšanas ir jārestartē PHP pakalpojums, lai izmaiņas stātos spēkā.
sudo systemctl restart php<版本>-fpmŠo parametru kombinācija ļauj vietnei saglabāt stabilitāti pat augstas vienlaicīguma apstākļos.
Restartējiet PHP-FPM pakalpojumu
Pēc izmaiņu veikšanas atcerieties restartēt pakalpojumu:
sudo systemctl restart php8.x-fpm
Pēc tam palaidiet to vēlreiz:
php -i | grep opcache
Ir apstiprināts, ka parametri ir atjaunināti.
Labākā prakse ražošanas vidē
Ražošanas vidē OPcache optimizācija ietver ne tikai parametru regulēšanu, bet arī šādas stratēģijas:
1. Notīriet kešatmiņu izvietošanas laikā
Pēc katra koda atjaunināšanas ir jāiztīra OPcache; pretējā gadījumā var tikt ielādēta vecāka versija.
CI/CD skriptam var pievienot sekojošo:
<?php opcache_reset();
Varat arī to izpildīt izvietošanas procesā:
systemctl reload php8.x-fpm
2. Izvairieties no biežas tīrīšanas
Pārāk bieža kešatmiņas tīrīšana var izraisīt veiktspējas pasliktināšanos.
Ieteicams tīrīt tikai tad, kad kods tiek atjaunināts, nevis regulāri.
3. Uzraugiet OPcache lietojumu.
Kešatmiņas sasniegumu līmeni reāllaikā var pārbaudīt, izmantojot komandu `php -i | grep opcache` vai instalējot Opcache vadības paneļa spraudni.
Sasniegumu līmenis virs 95% norāda uz saprātīgu konfigurāciju.
Saskaņā ar Zend oficiālajiem veiktspējas testiem, OPcache iespējošana var uzlabot PHP skriptu izpildes ātrumu līdz pat 3 reizēm un samazināt centrālā procesora noslodzi par 50%.
Tā nav kaut kāda mistiska teorija; tie ir stabili dati.
Secinājums: Mani viedokļi un galvenie citāti
Manuprāt, OPcache ir kā tīmekļa vietnes "turbokompresors". Bez tā PHP ir kā automašīna bez turbokompresora, kas darbojas lēni un tērē degvielu.
OPcache optimizācija nav tikai tehniska detaļa, bet arī stratēģiska izvēle vietnes darbībai.
Jo ātrums ir vienāds ar konversijas līmeni, un veiktspēja ir vienāda ar konkurētspēju.
Galvenais citāts: Tīmekļa vietnes nākotne nav atkarīga no tā, cik izsmalcināts ir tās kods, bet gan no tā, cik ātri tā var reaģēt tik ātri, ka lietotājiem pat nav laika pamirkšķināt.
Tāpēc pārtrauciet ļaut serveriem tērēt resursus neefektīvās cilpās.
Optimizējiet savu HestiaCP OPcache tūlīt un lieciet savai vietnei lidot.
Vai vēlaties, lai es uzrakstu jūsu ražošanas videi vislabāko OPcache konfigurācijas veidni, kuru pēc tam varat tieši nokopēt un izmantot php.ini failā?
Hope Chen Weiliang emuārs ( https://www.chenweiliang.com/ Šeit kopīgotais raksts "Kā optimizēt OPcache programmā HestiaCP? Opkoda kešatmiņa un PHP koda kompilēšana, lai jūsu vietne darbotos ātri", varētu jums noderēt.
Laipni lūdzam kopīgot šī raksta saiti:https://www.chenweiliang.com/cwl-34197.html
