Как да оптимизираме OPcache в HestiaCP? Кеширането на opcode и компилирането на PHP код може драстично да увеличи скоростта на уебсайта.

Скоростта е живот; ако даден уебсайт изостава дори с частица от секундата, потребителите ще се обърнат и ще си тръгнат.

Ето защо HestiaCP Оптимизирането на OPcache е от решаващо значение за успеха или провала на всеки уебсайт, който разчита на PHP.

Какво е OPcache?

OPcache е вграден енджин за кеширане на байткод в PHP.

Функцията му е проста: кешира компилирания PHP скрипт в паметта и директно извиква кеша при повторен достъп до него, вместо да го прекомпилира.

Това подобрява скоростта на реакция на уебсайта, намалява натоварването на процесора и незабавно облекчава натоварването на сървъра.

Според официалната документация на PHP:

OPcache осигурява значителни подобрения в производителността, като намалява времето за изпълнение, като избягва дублирането на компилацията на скриптове.

Накратко: OPcache е PHP ускорител.

Защо да оптимизираме OPcache в HestiaCP?

Как да оптимизираме OPcache в HestiaCP? Кеширането на opcode и компилирането на PHP код може драстично да увеличи скоростта на уебсайта.

HestiaCP е лек контролен панел, който много хора използват за управление на VPS или специализирани сървъри.

OPcache е активиран по подразбиране, но параметрите често са консервативни.

Без корекции, подобрението на производителността ще бъде ограничено.

например:
На сървър с 4 ядра и 8GB памет, паметта по подразбиране на OPcache е само 64MB, а броят на кешираните файлове е само 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

За да активирате CLI режим:

/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
    Разпределянето на 256MB памет на OPcache е подходящо за средни до големи уебсайтове.
    За малки уебсайтове можете да го зададете на 128MB.

  • opcache.interned_strings_buffer=16
    Осигурява 16MB кеш памет за низове, за да намали използването на дублиращи се низове.

  • opcache.max_accelerated_files=10000
    Препоръчително е максималният брой кеширани файлове да бъде поне 10 000 в среда на WordPress + плъгин.

  • opcache.revalidate_freq=60
    Файловете се проверяват за актуализации на всеки 60 секунди, за да се намали честият входно-изходен трафик.

  • opcache.enable_cli=1
    Активирането на кеширането на CLI е подходящо за изпълнение на инструменти от командния ред, като Artisan и WP-CLI.

  • opcache.enable_file_override=1
    Позволете на OPcache да поеме кеша на файловата система, което допълнително намалява достъпа до диска.

  • opcache.validate_timestamps=0
  • Деактивиране на откриването в реално времеНамалете I/O на файловата система и подобрете производителността.
  • Това обаче означава, че трябва ръчно да изчистите кеша (да рестартирате 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? Кеширане на opcode и компилиране на PHP код, за да накарате уебсайта си да работи“, споделена тук, може да ви е полезна.

Добре дошли да споделите връзката към тази статия:https://www.chenweiliang.com/cwl-34197.html

За да отключите още скрити трикове🔑, заповядайте в нашия Telegram канал!

Споделете и харесайте, ако ви харесва! Вашите споделяния и харесвания са нашата постоянна мотивация!

 

发表 评论

Вашият имейл адрес няма да бъде публикуван. Използват се задължителните полета * Етикет

Справочник на статиите
Преминете към Top