Каталог артыкулаў
Хуткасць — гэта жыццё; калі вэб-сайт адстае хаця б на долю секунды, карыстальнікі развярнуцца і сыдуць.
Вось чаму HestiaCP Аптымізацыя OPcache мае вырашальнае значэнне для поспеху або няўдачы любога вэб-сайта, які абапіраецца на PHP.
Што такое OPcache?
OPcache — гэта ўбудаваны механізм кэшавання байт-кода ў PHP.
Яго функцыя простая: кэшаваць скампіляваны PHP-скрыпт у памяці і непасрэдна выклікаць кэш пры паўторным доступе да яго, замест перакампіляцыі.
Гэта паляпшае хуткасць водгуку вэб-сайта, зніжае нагрузку на працэсар і імгненна здымае нагрузку на сервер.
Згодна з афіцыйнай дакументацыяй PHP:
OPcache забяспечвае значнае паляпшэнне прадукцыйнасці, скарачаючы час выканання і пазбягаючы дубліравання кампіляцыі скрыптоў.
Карацей кажучы: OPcache — гэта паскаральнік PHP.
Навошта аптымізаваць OPcache ў HestiaCP?

HestiaCP — гэта лёгкая панэль кіравання, якую многія выкарыстоўваюць для кіравання VPS або выдзеленымі серверамі.
OPcache уключаны па змаўчанні, але параметры часта кансерватыўныя.
Без карэкціровак паляпшэнне прадукцыйнасці будзе абмежаваным.
напрыклад:
На серверы з 4 ядрамі і 8 ГБ памяці памер кэша OPcache па змаўчанні складае ўсяго 64 МБ, а колькасць кэшаваных файлаў — толькі 4000.
Гэта для сярэдняга памеру WordPress Для вэб-сайта гэтага проста недастаткова.
У выніку кэш пастаянна ачышчаецца, што прыводзіць да паўторных ваганняў прадукцыйнасці.
Праверце бягучы стан OPcache
Выканайце наступную каманду:
php -i | grep opcache.enable
Вы ўбачыце вынікі, падобныя да:
- opcache.enable => Укл.: Гэта азначае, што OPcache уключаны ў PHP-FPM.
- opcache.enable_cli => Выкл.: Не ўключана ў рэжыме каманднага радка.
- opcache.enable_file_override => Выкл.: Функцыя перавызначэння файлаў не ўключана.
Гэта азначае, што, хоць OPcache ўжо працуе, усё яшчэ ёсць месца для аптымізацыі.
Рэдагаваць файлы канфігурацыі PHP
У HestiaCP шлях да файла канфігурацыі PHP звычайна такі:
/etc/php/8.x/fpm/php.ini
Каб уключыць рэжым каманднага радка:
/etc/php/8.x/cli/php.ini
Знайдзіце раздзел [opcache] і дадайце або змяніце наступныя параметры:
[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
Падрабязнасці параметраў і логіка аптымізацыі
opcache.memory_consumption=256
Вылучэнне 256 МБ памяці для OPcache падыходзіць для сярэдніх і вялікіх вэб-сайтаў.
Для невялікіх вэб-сайтаў можна ўсталяваць памер да 128 МБ.opcache.interned_strings_buffer=16
Забяспечвае кэш радкоў памерам 16 МБ, каб паменшыць выкарыстанне дублікатаў радкоў.opcache.max_accelerated_files=10000
Рэкамендуецца, што максімальная колькасць кэшаваных файлаў у асяроддзі WordPress + убудовы складае не менш за 10 000.opcache.revalidate_freq=60
Файлы правяраюцца на наяўнасць абнаўленняў кожныя 60 секунд, каб паменшыць частыя аперацыі ўводу/вываду.opcache.enable_cli=1
Уключэнне кэшавання CLI падыходзіць для запуску інструментаў каманднага радка, такіх як Artisan і WP-CLI.opcache.enal_file_override=1
Дазволіць OPcache кіраваць кэшам файлавай сістэмы, што яшчэ больш абмяжоўвае доступ да дыска.- opcache.validate_timestamps=0
- Адключыць выяўленне ў рэжыме рэальнага часуСкараціце аб'ём уводу/вываду файлавай сістэмы і палепшыце прадукцыйнасць.
Аднак гэта азначае, што пасля змены PHP-файлаў вам трэба будзе ўручную ачысціць кэш (перазапусціць службу PHP).
Пасля змены канфігурацыі неабходна перазапусціць службу PHP, каб змены ўступілі ў сілу.
sudo systemctl restart php<版本>-fpmСпалучэнне гэтых параметраў дазваляе вэб-сайту заставацца стабільным нават пры высокай паралельнасці.
Перазапусціце службу PHP-FPM
Пасля ўнясення змяненняў не забудзьцеся перазапусціць службу:
sudo systemctl restart php8.x-fpm
Затым запусціце яго зноў:
php -i | grep opcache
Пацверджана абнаўленне параметраў.
Найлепшыя практыкі ў вытворчым асяроддзі
У вытворчых асяроддзях аптымізацыя OPcache ўключае ў сябе не толькі наладу параметраў, але і наступныя стратэгіі:
1. Ачысціце кэш падчас разгортвання
Пасля кожнага абнаўлення кода кэш OPcache павінен быць ачышчаны, інакш можа быць загружана старая версія.
Вы можаце дадаць наступнае ў скрыпт CI/CD:
<?php opcache_reset();
Акрамя таго, выканайце яго ў працэсе разгортвання:
systemctl reload php8.x-fpm
2. Пазбягайце частай уборкі
Занадта частая ачыстка кэша можа прывесці да пагаршэння прадукцыйнасці.
Рэкамендуецца рабіць ачыстку толькі пры абнаўленні кода, а не праз рэгулярныя прамежкі часу.
3. Кантралюйце выкарыстанне OPcache.
Вы можаце праверыць частату зваротаў да кэша ў рэжыме рэальнага часу, выкарыстоўваючы каманду `php -i | grep opcache` або ўсталяваўшы плагін Opcache Control Panel.
Паказчык поспеху больш за 95% сведчыць аб разумнай канфігурацыі.
Згодна з афіцыйнымі тэстамі прадукцыйнасці Zend, уключэнне OPcache можа палепшыць хуткасць выканання PHP-скрыптоў да 3 разоў і знізіць выкарыстанне працэсара на 50%.
Гэта не нейкая містычная тэорыя; гэта цвёрдыя дадзеныя.
Выснова: Мае погляды і ключавыя цытаты
На маю думку, OPcache — гэта як «турбакампрэсар» для вэб-сайта. Без яго PHP — гэта як аўтамабіль без турбакампрэсара, які працуе павольна і марнуе паліва.
Аптымізацыя OPcache — гэта не толькі тэхнічная дэталь, але і стратэгічны выбар для працы вэб-сайта.
Таму што хуткасць роўная каэфіцыенту канверсіі, а прадукцыйнасць роўная канкурэнтаздольнасці.
Ключавая цытата: Будучыня вэб-сайта не ў тым, наколькі мудрагелісты яго код, а ў тым, наколькі хутка ён можа рэагаваць, настолькі хутка, што карыстальнікі нават не паспяваюць міргнуць вокам.
Таму спыніце дазваляць серверам марнаваць рэсурсы ў неэфектыўных цыклах.
Аптымізуйце свой HestiaCP OPcache зараз і зрабіце свой сайт паспяховым.
Вы хочаце, каб я напісаў найлепшы ў сваім класе шаблон канфігурацыі OPcache для вашага працоўнага асяроддзя, які вы потым зможаце непасрэдна скапіяваць і выкарыстоўваць у php.ini?
Блог Hope Chen Weiliang ( https://www.chenweiliang.com/ Артыкул «Як аптымізаваць OPcache ў HestiaCP? Кэшаванне опкодаў і кампіляцыя PHP-кода для хуткай працы вашага сайта», які мы падзяліліся тут, можа быць вам карысным.
Запрашаем падзяліцца спасылкай на гэты артыкул:https://www.chenweiliang.com/cwl-34197.html
