Наскільки швидкий WordPress із PHP-FPM 7 у порівнянні з 5?

Переваги PHP7 для продуктивності WordPress: Результати Тестування та Інструкції з Оновлення

PHP7 відзначається значними покращеннями в продуктивності, і в цій статті я провів експеримент, щоб оцінити продуктивність WordPress на PHP 5.6 та 7.

Також ви дізнаєтесь, як здійснити перехід вашого WordPress з PHP 5 на 7 на різних типах хостингу: спільному, VPS/Cloud.

PHP7 з’явився у 2015 році з низкою оптимізацій продуктивності, проте, здається, що в індустрії ще не всі перейшли на нову версію PHP.

Як видно, PHP7 має трохи більше 3% ринкової частки, попри значні переваги. Чи це через брак обізнаності?

Я дослідив багато матеріалів про порівняння PHP7 та PHP5, тому вирішив особисто протестувати, наскільки швидкий PHP7 на вебсайті WordPress.

Перед тим, як перейти до результатів, розглянемо деякі ключові особливості PHP7:

  • Зменшене споживання пам’яті
  • Повна підтримка 64-бітової архітектури
  • Оновлений рушій Zend Engine
  • Новий механізм виключень для ефективнішої обробки помилок
  • Введення анонімних класів
  • Пришвидшене завантаження вебсайту (само собою зрозуміло)

Остання версія WordPress офіційно сумісна з PHP7. Розглянемо, як WordPress працює на PHP7.

Деталі Тестування

Розглянемо платформу та процедуру тестування для більшої наочності.

  • Я використав план Linode за 10 доларів і зробив наступне:
  • Встановив WordPress 4.7 на Ubuntu 16.04 LTS через EasyEngine
  • Застосував тему Blogging від MyThemeShop
  • Не використовував плагін кешування або CDN
  • Застосував Loader.io для тестування навантаження з 50-200 клієнтами протягом однієї хвилини.

Продуктивність WordPress на PHP-FPM 5.6

EasyEngine за замовчуванням встановлює PHP-FPM 5.6, тому я не робив додаткових налаштувань, окрім інсталяції WordPress, застосування теми та налаштування тестового домену на IP-адресу Linode VM.

Запустивши тест на Loader, я отримав такий результат:

  • Середній час відповіді: 11,96 секунд
  • Мінімальний час відповіді: 0,6 секунди
  • Максимальний час відповіді: 19 секунд

Продуктивність WordPress на PHP-FPM 7.0

Я переключився на PHP 7 через Easy Engine і отримав наступні результати:

Результат вражає! PHP7 демонструє майже вдвічі кращу швидкість. PHP7 показав кращі результати у всіх аспектах.

  • Середній час становить 5,1 секунди порівняно з 11,96 секундами на PHP 5.6
  • Мінімальний час відповіді становить 0,4 секунди порівняно з 0,6 секунди
  • Максимальний час відгуку становить 8,2 секунди порівняно з 19 секундами

Просте переведення WordPress з PHP 5.6 на PHP 7 зменшило час завантаження сайту на 50%.

Це вигідне покращення для будь-якого веб-сайту на WordPress, і якщо ви ще не використовуєте останню версію PHP, цей тест має спонукати вас до оновлення.

Перевірка Сумісності

Рекомендується перевірити вашу тему та плагіни на сумісність з PHP 7 перед оновленням, щоб уникнути проблем.

Плагін PHP Compatibility Checker від WPEngine допоможе проаналізувати вашу тему та плагіни і повідомить про їх сумісність з PHP 7.

Як Перейти з PHP 5 на 7?

Існує кілька способів оновлення, залежно від вашої платформи.

Якщо Використовується EasyEngine

Один із найшвидших способів змінити версію PHP – це використовувати EasyEngine.

Увійдіть до вашого VPS/Cloud, де встановлено EasyEngine.

Виконайте команду ee

ee site update yourwebsite.com --php7

Наприклад:

[email protected]:~# ee site update chandan.io --php7
PHP7.0 is experimental feature and it may not work with all plugins of your site.
You can disable it by passing --php7=off later.
Do you wish to enable PHP now for chandan.io?
Type "y" to continue [n]:y
Running pre-update checks, please wait...
Backup location : /var/www/chandan.io/backup/25Feb2017093100
Backing up database  [Done]
Setting up NGINX configuration  [Done]
Setting up webroot   [Done]
Reload : nginx  [OK]
Successfully updated site http://chandan.io
[email protected]:~#

Використайте команду ps для перевірки, чи працює PHP 7.

[email protected]:~# ps -ef|grep php
root  17274   1  0 Feb24 ?    00:00:04 php-fpm: master process (/etc/php/7.0/fpm/php-fpm.conf)
root  26674 26541  0 09:31 pts/0    00:00:00 grep --color=auto php
[email protected]:~#

Примітка: якщо ви бачите, що PHP 5 та PHP 7 працюють одночасно, ви можете зупинити PHP 5 та видалити його автоматичний запуск.

Якщо Використовується Спільний Хостинг

Якщо ви користуєтеся спільним хостингом з cPanel, ви можете самостійно змінити версію PHP, як показано нижче.

Якщо у вас немає cPanel, вам, можливо, потрібно буде звернутися до вашого хостинг-провайдера.

Наступний знімок екрана зроблено на SiteGround.

  • Увійдіть до вашої cPanel.
  • У розділі “1H Software” натисніть “Менеджер версій PHP”.

  • Виберіть веб-сайт для зміни версії PHP.
  • Змініть версію та натисніть “Зберегти”.

Ви отримаєте підтвердження, що нова версія застосована до вашого сайту.

От і все! Ви щойно зробили свій сайт WordPress швидшим на спільному хостингу.

Якщо Хостинг на Kinsta

Kinsta – це преміум-хостинг для WP, що використовує Google Cloud для забезпечення найкращого досвіду! Ви можете змінити версію PHP з MyKinsta.

Якщо Розміщення на Хмарі/VPS

Якщо ваш WordPress розміщений у хмарі або на VPS, наприклад, Google Cloud, AWS, Linode, DigitalOcean, і ви встановлювали все вручну, то ви можете оновити PHP наступним чином (приклад для CentOS 6.x):

  • Увійдіть до вашої віртуальної машини CentOS.
  • Зробіть резервну копію віртуальної машини перед оновленням, щоб у разі проблем можна було повернутися до попереднього стану.
  • Видаліть існуючу версію PHP.
yum remove php-fpm php-cli php-common
  • Встановіть наступний репозиторій.
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm
  • Встановіть PHP-FPM 7 та необхідні модулі.
yum install php70w-fpm-nginx php70w-cli php70w-mysqlnd php70w-fpm

Перезапустіть Nginx, MySQL та PHP-FPM, щоб зміни вступили в силу. Також перевірте функціональність вашого веб-сайту WordPress.

Вітаємо! Ви успішно встановили PHP-FPM 7.

Для перевірки версії скористайтеся командою:

[roo[email protected] init.d]# /usr/sbin/php-fpm -version
PHP 7.0.16 (fpm-fcgi) (built: Feb 18 2017 10:46:38)
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
[[email protected] init.d]#

Висновок

Сподіваюся, ця стаття надала вам необхідну інформацію для реалізації PHP-FPM 7 на вашому WordPress та розуміння його переваг щодо продуктивності. Застосуйте PHP-FPM 7 для швидшого завантаження вашого веб-сайту WordPress.