Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018)

в 9:07, , рубрики: laravel, php, symfony, бенчмарки, Блог компании Mail.Ru Group, никто не читает теги, Тестирование веб-сервисов

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 1

Каждый год мы стараемся тщательно измерять производительность разных версий PHP и HHVM на различных платформах. В этом году мы измерили четыре версии PHP и HHVM на 20 платформах/конфигурациях, включая WordPress, Drupal, Joomla!, Laravel, Symfony и многие другие. Также мы протестировали популярные решения для электронной коммерции вроде WooCommerce, Easy Digital Downloads, Magento and PrestaShop.

Мы всегда рекомендовали пользователям WordPress не пренебрегать преимуществами свежайших поддерживаемых версий PHP. Не только ради безопасности, но и ради повышения производительности. Причём речь идёт не только о WordPress, это по большей части справедливо для всех платформ. И сегодня мы продемонстрируем, как PHP 7.2 одерживает сокрушительную победу!

В этом году результаты бенчмарков очень сильно отличаются от прошлогодних, когда победителем стал HHVM. Нас впечатлило, что PHP 7.2 вырвался в лидеры по скорости работы. Нужно отметить, что применительно к WordPress HHVM больше не поддерживается и будет постепенно сходить со сцены. Мы больше не рекомендуем своим клиентам переходить на HHVM и отмечаем, что его поддержка другими платформами также снизилась.

Это хорошие новости для разработчиков и конечных пользователей, поскольку теперь можно сосредоточиться на PHP и создавать более быстрые сайты и веб-сервисы.

Мы протестировали 20+ платформ/конфигураций с пятью разными движками, и PHP 7.2 завоевал золотую медаль с результатом 14/20!

Бенчмарки PHP и HHVM (2018)

Для каждого теста мы брали последнюю версию каждой платформы и в течение минуты измеряли работу главной страницы с 15 одновременными пользователями. Тестовый стенд:

  • Машина: 8x Intel® Xeon® CPU, 2,20 ГГц (работала в Google Cloud Platform и исполнялась в изолированном контейнере)
  • ОС: Ubuntu 16.04.3 LTS
  • Стек Docker: Debian 8, Nginx 1.13.8, MariaDB 10.1.31
  • Движки PHP: 5.6, 7.0, 7.1, 7.2
  • HHVM: 3.24.2
  • OPCache: для WordPress, Joomla и Drupal мы использовали официальный образ Docker. Для остальных — тот же образ с включённым OPCache и рекомендованными настройками php.ini.

opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcache.enable_cli=1

Тесты выполнял Торик Фирдаус (Thoriq Firdaus), один из разработчиков WordPress и инженер поддержки в Kinsta. Торик участвовал в создании WordPress Core и редактора локализации WordPress для Индонезии.

Что такое PHP?

PHP — это гипертекстовый препроцессор. Сегодня это один из самых популярных скриптовых языков в сети. Согласно W3Techs, PHP применяется на 83 % сайтов, использующих языки программирования на стороне сервера.

Что такое HHVM?

Из-за проблем с производительностью PHP команда Facebook разработала HipHop Virtual Machine (HHVM). Это система, использующая JIT-компиляцию (just-in-time) для преобразования PHP-кода в машинный код ради синергии PHP и железа, на котором этот код исполняется.

Протестированные платформы и конфигурации

Мы протестировали 20 платформ/конфигураций. В некоторых случаях из-за отсутствия поддержки конкретной версии PHP пришлось протестировать по несколько версий. Все измерения — количество запросов в секунду. Чем больше значения, тем лучше.

WordPress 4.9.4

Первой протестированной платформой стал, конечно же, наш любимый WordPress (возможно, мы немного предвзяты, поскольку ежедневно живём этой CMS). По сути, WordPress — ПО с открытым исходным кодом, которое можно использовать для создания прекрасных сайтов, блогов или приложений. Сегодня на WordPress приходится около 29 % всех сайтов в интернете, то есть более четверти.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 2

Для измерения производительности WordPress мы использовали бесплатную тему Twenty Seventeen. Для заполнения взяли фальшивый контент из wptest.io и в течение минуты тестировали главную страницу, которую одновременно просматривают 15 пользователей.

  • Количество публикаций на странице: 10, сгенерированы wptest.io.
  • На боковой панели (Sidebar) есть только поиск.
  • Образ Docker взят из https://hub.docker.com/_/wordpress/

    Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 3
    WordPress benchmarks

Результаты бенчмарков

  • WordPress 4.9.4 PHP 5.6: 49,18 запроса в секунду
  • WordPress 4.9.4 PHP 7.0: 133,55 запроса в секунду
  • WordPress 4.9.4 PHP 7.1: 134,24 запроса в секунду
  • WordPress 4.9.4 PHP 7.2: 148,8 запроса в секунду
  • WordPress 4.9.4 HHVM: 144,76 запроса в секунду

Победил PHP 7.2, он оказался чуть быстрее HHVM. Это важная перемена по сравнению с бенчмарками 2016 года, когда однозначным победителем был HHVM. Кроме того, PHP для WordPress работает гораздо стабильнее. Мы сами сталкивались с многочисленными проблемами при эксплуатации HHVM. А если сравнить PHP 7.2 с PHP 5.6, то разница в производительности оказывается трёхкратной!

WordPress 4.9.4 + WooCommerce 3.3.1

WooCommerce — полностью кастомизируемая open-source платформа на основе WordPress. К тому же это одно из самых популярных решений для электронной коммерции, на нём работает свыше 42 % всех коммерческих сайтов.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 4

Для этого теста мы взяли WordPress с установленным WooCommerce и бесплатной темой Storefront eCommerce.

  • Количество товаров: 8 (по два в ряд).
  • Страница магазина задана в качестве главной.
  • Образ Docker взят из https://hub.docker.com/_/wordpress/

    Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 5
    WordPress + WooCommerce

Результаты бенчмарков

  • WordPress 4.9.4 + WooCommerce 3.3.1 PHP 5.6: 34,47 запроса в секунду
  • WordPress 4.9.4 + WooCommerce 3.3.1 PHP 7.0: 84,89 запроса в секунду
  • WordPress 4.9.4 + WooCommerce 3.3.1 PHP 7.1: 86,04 запроса в секунду
  • WordPress 4.9.4 + WooCommerce 3.3.1 PHP 7.2: 92,6 запроса в секунду
  • WordPress 4.9.4 + WooCommerce 3.3.1 HHVM: 69,58 запроса в секунду

WooCommerce с трудом работал с HHVM, а PHP 7.2 победил PHP 7.1 с небольшим преимуществом.

WordPress 4.9.4 + Easy Digital Downloads 2.8.18

Easy Digital Downloads (EDD) создал Пипин Уильямсон (Pippin Williamson). Это бесплатный WordPress-плагин, помогающий авторам и разработчикам продавать цифровые продукты.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 6

Посмотрев, как работает WooCommerce, мы протестировали WordPress с одним лишь установленным Easy Digital Downloads. Использовалась бесплатная тема EDD Starter Theme.

  • Количество товаров: 6 (товары по умолчанию из самого плагина).
  • Две картинки в списке продуктов отсутствуют.
  • Образ Docker взят из https://hub.docker.com/_/wordpress/

    Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 7
    WordPress + Easy Digital Downloads

Результаты бенчмарков

  • WordPress 4.9.4 + EDD 2.8.18 PHP 5.6: 76,71 запроса в секунду
  • WordPress 4.9.4 + EDD 2.8.18 PHP 7.0: 123,83 запроса в секунду
  • WordPress 4.9.4 + EDD 2.8.18 PHP 7.1: 124,82 запроса в секунду
  • WordPress 4.9.4 + EDD 2.8.18 PHP 7.2: 135,74 запроса в секунду
  • WordPress 4.9.4 + EDD 2.8.18 HHVM: 127,74 запроса в секунду

PHP 7.2 доминирует.

Drupal 8.4.4

Drupal — open-source CMS, заслужившая популярность благодаря модульной системе и сильному сообществу разработчиков. Она появилась в 2000-м и, согласно W3Techs, используется примерно на 2,2 % всех сайтов, занимая 4,4 % рынка CMS.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 8

Мы использовали бесплатную тему Bartik 8.4.4. Отметим, что Drupal 8.4.x несовместима с PHP 7.2 (#2932574), поэтому движок мы не тестировали.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 9
Drupal

Результаты бенчмарков

  • Drupal 8.4.4 PHP 5.6: 7,05 запроса в секунду
  • Drupal 8.4.4 PHP 7.0: 15,94 запроса в секунду
  • Drupal 8.4.4 PHP 7.1: 19,15 запроса в секунду
  • Drupal 8.4.4 PHP 7.2: не поддерживается
  • Drupal 8.4.4 HHVM: 19,57 запроса в секунду

Поскольку последняя версия Drupal не поддерживает PHP 7.2, победителем стал HHVM. Хотя если посмотреть на улучшения производительности в предыдущих версиях PHP, то можно смело предположить, что 7.2 работал бы ещё быстрее.

Joomla! 3.8.5

Joomla! — бесплатная CMS с открытым исходным кодом для публикации контента. Она впервые вышла в августе 2005-го. Joomla! построена на основе фреймворка для веб-приложений по схеме «модель-представление-контроллер» и, согласно W3Techs, используется на 3,1 % всех сайтов в интернете.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 10

Для тестирования Joomla мы использовали бесплатный шаблон Beez3.

  • Количество публикаций: 4 (добавленные при установке образцы публикаций по умолчанию)
  • Панели по умолчанию не использованы.
  • Образ Docker взят из https://hub.docker.com/_/joomla/

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 11
Joomla!

Результаты бенчмарков

  • Joomla! 3.8.5 PHP 5.6: 26,42 запроса в секунду
  • Joomla! 3.8.5 PHP 7.0: 41,46 запроса в секунду
  • Joomla! 3.8.5 PHP 7.1: 41,17 запроса в секунду
  • Joomla! 3.8.5 PHP 7.2: 42,36 запроса в секунду
  • Joomla! 3.8.5 HHVM: 51,84 запроса в секунду

На примере Joomla мы видим стабильный рост производительности PHP от версии к версии. Но HHVM всё ещё лидирует.

Magento 2 (CE) 2.1.11 + 2.2.2

Magento — популярная open-source платформа, написанная на PHP. Она появилась в марте 2008-го. Согласно W3Techs, Magento работает на 1,2 % всех сайтов.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 12

Для тестирования Magento 2 benchmark мы использовали бесплатную тему Luma. Поскольку PHP 5.6 поддерживался только версией 2.1.11, нам пришлось прогонять бенчмарки на двух версиях Magento. Мы установили её с образцами данных и темой, идущими в комплекте. Для дополнительного тестирования использовали версию 2.2.2. Magento 2 пока не поддерживает PHP 7.2 и последнюю версию HHVM.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 13
Magento 2

Результаты бенчмарков

  • Magento 2 (CE) 2.1.11 PHP 5.6: 10,75 запроса в секунду
  • Magento 2 (CE) 2.1.11 PHP 7.0: 20,87 запроса в секунду
  • Magento 2 (CE) 2.1.11 PHP 7.1: 29,84 запроса в секунду
  • Magento 2 (CE) 2.1.11 PHP 7.2: не поддерживается
  • Magento 2 (CE) 2.1.11 HHVM: не поддерживается

Поскольку Magento 2 не поддерживает PHP 7.2 и последнюю версию HHVM, победителем стал PHP 7.1. Впечатляет рост производительности от версии к версии.

Grav CMS 1.3.10

Grav — простая, но мощная open-source CMS, которой не требуется база данных. Её ещё иногда называют «CMS на основе неструктурированных файлов (flat-file)».

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 14

Мы использовали бесплатный пакет Clean Blog. Обратите внимание, Grav CMS больше не совместима с компилятором HHVM, а из сборки Travis удалена среда HHVM.

  • Количество публикаций: 4 (предустановленные образцы в Clean Blog)
  • Выключено кеширование страниц и файлов https://learn.getgrav.org/advanced/performance-and-caching, кеширование Twig работает.

    Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 15
    Grav CMS

Результаты бенчмарков

  • Grav CMS 1.3.10 PHP 5.6: 34,83 запроса в секунду
  • Grav CMS 1.3.10 PHP 7.0: 53,37 запроса в секунду
  • Grav CMS 1.3.10 PHP 7.1: 53,37 запроса в секунду
  • Grav CMS 1.3.10 PHP 7.2: 55,12 запроса в секунду
  • Grav CMS 1.3.10 HHVM: не поддерживается

PHP 7.2 снова одержал убедительную победу.

October CMS 1.0.433

October CMS — бесплатная open-source модульная CMS-платформа с собственным сервером, построенная на базе PHP-фреймворка Laravel. Впервые она вышла в мае 2014-го.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 16

Мы использовали бесплатную тему Clean Blog. October CMS больше не совместима с PHP 5.6 и HHVM. И хотя мы cмогли обмануть инсталлятор, убрав проверку PHP, мастер конфигурирования вылетел с ошибкой 500.

  • Количество публикаций: 5 с двумя панелями слева (Recent posts и Follow me)

    Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 17
    October CMS

Результаты бенчмарков

  • October CMS 1.0.433 PHP 5.6: не поддерживается
  • October CMS 1.0.433 PHP 7.0: 43,83 запроса в секунду
  • October CMS 1.0.433 PHP 7.1: 47,95 запроса в секунду
  • October CMS 1.0.433 PHP 7.2: 48,87 запроса в секунду
  • October CMS 1.0.433 HHVM: не поддерживается

Два движка не поддерживаются, однако PHP 7.2 снова победил.

Приятно, что все эти не столь крупные CMS отказываются от поддержки старых версий PHP. Это одно из преимуществ, свойственных не слишком большим продуктам. К сожалению, когда речь заходит о WordPress и прочих платформах с большими долями рынка, прогресс замедляется из-за соображений обратной совместимости.

Laravel 5.4.36 + 5.6

Laravel — очень популярный open-source PHP-фреймворк, использующийся для создания веб-приложений. Он был разработан Тейлором Отвеллом (Taylor Otwell) и выпущен в июне 2011-го.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 18

В этом тестировании мы использовали чистую HTML-тему. Тесты были прогнаны несколько раз, взято среднеарифметическое. Подробности можно найти здесь.

  • Количество публикаций: 10, с циклом Blade
  • База данных содержит одну таблицу posts
  • Таблица содержит шесть колонок post_title, post_content, post_author, created_at и updated_at.
  • Сессии отключены.
  • Перед бенчмарками выполнены команды composer dump-autoload –classmap-authoritative, php artisan optimize –force, php artisan config:cache, php artisan route:cache.

    Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 19
    Laravel 5.4.36

Результаты бенчмарков

  • Laravel 5.4.36 PHP 5.6: 66,57 запроса в секунду
  • Laravel 5.4.36 PHP 7.0: 114,55 запроса в секунду
  • Laravel 5.4.36 PHP 7.1: 113,26 запроса в секунду
  • Laravel 5.4.36 PHP 7.2: 114,04 запроса в секунду
  • Laravel 5.4.36 HHVM: 394,31 запроса в секунду

HHVM — несомненный победитель.

Laravel 5.6 несовместим с HHVM и требует PHP 7.1 или выше.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 20
Laravel 5.6

Результаты бенчмарков

  • Laravel 5.6 PHP 5.6: не поддерживается
  • Laravel 5.6 PHP 7.0: не поддерживается
  • Laravel 5.6 PHP 7.1: 411,39 запроса в секунду
  • Laravel 5.6 PHP 7.2: 442,17 запроса в секунду
  • Laravel 5.6 HHVM: не поддерживается

Поразительная разница между результатами Laravel 5.6 PHP 7.2 и Laravel 5.4.36! Последние версии PHP явно пошли на пользу Laravel.

Symfony 3.3.6 + 4.0.1

Symfony — это набор многократно используемых PHP-компонентов и PHP-фреймворк для создания веб-приложений, API, микросервисов и веб-сервисов. Он вышел в октябре 2005-го.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 21

Здесь мы использовали Symfony Demo с MySQL (по умолчанию используется SQLite). Тесты проведены несколько раз, взято среднеарифметическое. HHVM выкидывал ошибку 500. Подробности можно почитать здесь.

  • Количество публикаций: 10
  • Тестовый URL: /en/blog/
  • composer dump-autoload -o, php bin/console doctrine:database:create, php bin/console doctrine:schema:create, php bin/console doctrine:fixtures:load, php bin/console cache:clear –no-warmup –env=prod
  • В основном файле (app.php) отключено кеширование (AppCache).

    Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 22
    Symfony 3.3.6

Результаты бенчмарков

  • Symfony 3.3.6 PHP 5.6: 81,78 запроса в секунду
  • Symfony 3.3.6 PHP 7.0: 184,15 запроса в секунду
  • Symfony 3.3.6 PHP 7.1: 187,6 запроса в секунду
  • Symfony 3.3.6 PHP 7.2: 196,94 запроса в секунду
  • Symfony 3.3.6 HHVM: не поддерживается

PHP 7.2 снова победил!

Symfony 4.0.1 требуется PHP 7.1 или выше. И снова HHVM выкидывал ошибку 500.

  • В версии 4.0.1 в основном файле (index.php) не реализован AppCache.

    Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 23
    Symfony 4.0.1

Результаты бенчмарков

  • Symfony 4.0.1 PHP 5.6: не поддерживается
  • Symfony 4.0.1 PHP 7.0: не поддерживается
  • Symfony 4.0.1 PHP 7.1: 188,12 запроса в секунду
  • Symfony 4.0.1 PHP 7.2: 197,17 запроса в секунду
  • Symfony 4.0.1 HHVM: не поддерживается

PHP 7.2 опять царь горы.

PyroCMS 3.4.14

PyroCMS — open-source расширение для Laravel, ускоряющее создание сайтов и приложений с помощью этого фреймворка.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 24

Мы использовали бесплатную тему Accelerant Theme (идёт по умолчанию в PyroCMS). PyroCMS не работает в HHVM, вероятно, из-за Laravel.

  • Количество публикаций: 5
  • Включён режим отладки (APP_DEBUG=true)

    Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 25
    PyroCMS

Результаты бенчмарков

  • PyroCMS 3.4.14 PHP 5.6: не поддерживается
  • PyroCMS 3.4.14 PHP 7.0: 27,33 запроса в секунду
  • PyroCMS 3.4.14 PHP 7.1: 27,81 запроса в секунду
  • PyroCMS 3.4.14 PHP 7.2: 29,28 запроса в секунду
  • PyroCMS 3.4.14 HHVM: не поддерживается

Результаты близки к PyroCMS, но PHP 7.2 опять был лучшим.

Pagekit 1.0.13

Pagekit — лёгкая модульная open-source CMS, позволяющая создавать прекрасные сайты. Она вышла весной 2016-го.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 26

Мы использовали бесплатную тему One (идёт в Pagekit по умолчанию).

  • Количество публикаций: 5
  • Кеш отключён
  • Тестовый URL: /blog

    Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 27
    Pagekit

Результаты бенчмарков

  • Pagekit 1.0.13 PHP 5.6: 51,7 запроса в секунду
  • Pagekit 1.0.13 PHP 7.0: 108,61 запроса в секунду
  • Pagekit 1.0.13 PHP 7.1: 112,3 запроса в секунду
  • Pagekit 1.0.13 PHP 7.2: 116,18 запроса в секунду
  • Pagekit 1.0.13 HHVM: 61,16 запроса в секунду

Pagekit с трудом работал с HHVM. PHP 7.2 — безусловный победитель.

Bolt CMS 3.4.8

Bolt — это open-source инструмент управления контентом, который авторы стараются сделать как можно проще. Он построен на основе компонентов Silex и Symfony, использует Twig, а также SQLite, MySQL или PostgreSQL.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 28

Мы использовали бесплатную тему Bolt Base 2016. HHVM не поддерживается (#6921).

  • Количество публикаций: 5
  • Тестовый URL: /entries
  • Сессии включены

    Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 29
    Bolt CMS

Результаты бенчмарков

  • Bolt CMS 3.4.8 PHP 5.6: 33,45 запроса в секунду
  • Bolt CMS 3.4.8 PHP 7.0: 60,21 запроса в секунду
  • Bolt CMS 3.4.8 PHP 7.1: 67,96 запроса в секунду
  • Bolt CMS 3.4.8 PHP 7.2: 72,05 запроса в секунду
  • Bolt CMS 3.4.8 HHVM: не поддерживается

Хорошо видно, что с каждой новой версией PHP производительность Bolt CMS растёт.

Anchor CMS 0.12.6 (pre-release)

Anchor — очень простая и компактная open-source система для ведения блогов.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 30

Мы использовали бесплатную тему Default Theme.

  • Количество публикаций: 5

    Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 31
    Anchor CMS

Результаты бенчмарков

  • Anchor CMS 0.12.6 PHP 5.6: 495,33 запроса в секунду
  • Anchor CMS 0.12.6 PHP 7.0: 546,02 запроса в секунду
  • Anchor CMS 0.12.6 PHP 7.1: 565 запросов в секунду
  • Anchor CMS 0.12.6 PHP 7.2: 561,73 запроса в секунду
  • Anchor CMS 0.12.6 HHVM: 487,71 запроса в секунду

Результаты PHP 7.1 и PHP 7.2 очень близки, но PHP 7.1 оказался чуть быстрее.

PrestaShop 1.7.2.4

PrestaShop — популярное и очень быстро развивающееся open-source решение для интернет-магазинов. Первая версия вышла в 2008-м, и, согласно W3Techs, PrestaShop используется на 0,6 % всех сайтов.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 32

Мы взяли бесплатную тему Classic Theme. PrestaShop не поддерживает HHVM.

  • Количество товаров: 7 (примеры по умолчанию)
  • Тестовый URL: /index.php
  • Кеширование страниц отключено, умное кеширование включено

    Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 33
    PrestaShop

Результаты бенчмарков

  • Prestashop 1.7.2.4 PHP 5.6: 61,96 запроса в секунду
  • Prestashop 1.7.2.4 PHP 7.0: 108,34 запроса в секунду
  • Prestashop 1.7.2.4 PHP 7.1: 111,38 запроса в секунду
  • Prestashop 1.7.2.4 PHP 7.2: 111,48 запроса в секунду
  • Prestashop 1.7.2.4 HHVM: не поддерживается

Результаты почти одинаковые, но PHP 7.2 на полноздри вырвался вперёд.

Craft CMS 2.6.3011

Craft CMS — продукт для разработчиков, дизайнеров и веб-специалистов, отличающийся гибкостью применения, широкими возможностями и простой использования.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 34

Мы взяли бесплатную тему по умолчанию.

  • Количество публикаций: 5
  • Тестовый URL: /index.php?p=news
  • CraftCMS поставляется с собственным файлом Docker. Мы немножко настроили его ради совместимости с Nginx.

    Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 35
    Craft CMS

Результаты бенчмарков

  • Craft CMS 2.6.3011 PHP 5.6: 131,04 запроса в секунду
  • Craft CMS 2.6.3011 PHP 7.0: 266,54 запроса в секунду
  • Craft CMS 2.6.3011 PHP 7.1: 272,14 запроса в секунду
  • Craft CMS 2.6.3011 PHP 7.2: 280,02 запроса в секунду
  • Craft CMS 2.6.3011 HHVM: 26,28 запроса в секунду

Craft CMS плохо работает с HHVM. Но зато PHP 7.2 опять на коне!

Fork CMS 5.2.2

Fork — простая open-source CMS, в которой применяются компоненты Symfony. Здесь мы использовали бесплатную тему, идущую по умолчанию, Fork Theme. Fork CMS требуется PHP 7.1 или выше, она не поддерживает HHVM.

  • Количество публикаций: 2 (идущие по умолчанию данные из ForkCMS)
  • Тестовый URL: /modules/blog

    Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 36
    Fork CMS

Результаты бенчмарков

  • Fork CMS 5.2.2 PHP 5.6: не поддерживается
  • Fork CMS 5.2.2 PHP 7.0: не поддерживается
  • Fork CMS 5.2.2 PHP 7.1: 10,68 запроса в секунду
  • Fork CMS 5.2.2 PHP 7.2: 12,83 запроса в секунду
  • Fork CMS 5.2.2 HHVM: не поддерживается

PHP 7.2 превзошёл по производительности PHP 7.1.

Мы в Kinsta перешли на PHP 7.2

Если эти результаты вас не убедили, то мы уж и не знаем, что вас вообще убедит. Просто дружеское напоминание, если вы клиент Kinsta: мы выпустили PHP 7.2 в декабре 2017-го. Если вам нужно увеличить производительность, можете легко перейти на PHP 7.2 одним кликом в панели MyKinsta.

Исчерпывающие бенчмарки PHP 5.6, 7.0, 7.1, 7.2 и HHVM (2018) - 37

Если вас беспокоит несовместимость со сторонними плагинами (это возможно), то именно для этого нужны площадки для стейджинга. Можете потестировать без риска для вашего production-сайта.

Впечатления от результатов бенчмарков

Как видите, PHP 7.2 по производительности лидирует на всех платформах.

  • PHP 7.2 оказался самым быстрым движком в 14 из 20 конфигураций. Ещё две конфигурации (Drupal и Magento) пока не поддерживают PHP 7.2, так что результат вполне мог быть 16/20.
  • Применительно к WordPress PHP 7.2 был самым быстрым во всех тестах (стоковый сайт WordPress, WooCommerce и Easy Digital Downloads).
  • На примере многих результатов можно отметить рост производительности PHP от версии к версии. Поэтому так важно тестировать свой сайт, плагины и прочее и регулярно обновлять движок. Это пойдёт на пользу вашим посетителям и клиентам!
  • Если ваш хостинг-провайдер не предлагает новые версии PHP, возможно, пора переезжать.

Автор: Макс

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js