Тест скорости PHP 7.3 на хостинге (2019)
- Прощай HHVM, 2019 год – это год PHP
- Производительность PHP (2019)
- Протестированные платформы и конфигурации
- WordPress 5.0
- WordPress 5.0 + WooCommerce 3.5.2
- WordPress 5.0 + Easy Digital Downloads 2.9.9
- WordPress 5.0.2
- WordPress 4.9.8
- WordPress 4.9.8 + WooCommerce 3.5.2
- WordPress 4.9.8 + Easy Digital Downloads 2.9.9
- Drupal 8.6.4
- Joomla! 3.9.1
- Magento 2 (CE) 2.1.15 + 2.3.0
- Grav CMS 1.5.5
- October CMS 1.0.443
- Laravel 5.4.36 + 5.7.15
- Symfony 3.3.6 + 4.2.0
- CodeIgniter 3.1.9
- PyroCMS 3.5.3
- Pagekit 1.0.15
- Bolt CMS 3.6.3
- Anchor CMS 0.12.7
- Craft CMS 3.0.35
- ExpressionEngine 5.0.2
- Вывод из результатов тестирования
Предлагаем вашему вниманию подробные тесты производительности для разных платформ, чтобы увидеть, как работают разные версии PHP. Протестировано пять различных версий PHP на 23 различных платформах / конфигурациях; включая WordPress (4.9 и 5.0), Drupal, Joomla!, Laravel, Symfony и многие другие. Также протестированы популярные решения для электронной коммерции, такие как WooCommerce, Easy Digital Downloads, Magento, Grav CMS и October CMS.
Пользователям WordPress всегда лучше использовать последние поддерживаемые версии PHP. Они не только безопаснее, но и лучше по производительности. И речь не только о WordPress, это верно по большей части для всех платформ. Сегодня вы увидите, как работает PHP 7.3.
Прощай HHVM, 2019 год – это год PHP
PHP – это серверный язык сценариев и программирования с открытым исходным кодом, который в основном используется для веб-разработки. Основная часть программного обеспечения WordPress написана на PHP, что делает PHP очень важным языком для сообщества WordPress. Хотя новый редактор блоков в WordPress 5.0 использует больше JavaScript и React.
Согласно W3Techs, PHP используют более 78% всех веб-сайтов, использующих язык программирования на стороне сервера. Некоторые могут утверждать, что PHP мертв. Но даже если разработчики любят заявлять об этом, PHP жив, работает быстрее и лучше, чем когда-либо.
В тестах 2016 года HHVM был явным победителем с точки зрения производительности, когда дело дошло до запуска WordPress. HHVM был создан командой разработчиков Facebook. Это система, использующая JIT-компиляцию для преобразования PHP-кода в машинный язык для взаимодействия между PHP-кодом и оборудованием, на котором он выполняется. По этому хостинг Kinsta предлагал HHVM в качестве альтернативы, потому что PHP не успевал с точки зрения улучшений.
Тем не менее, в тестах 2017 года PHP 7.2 начал лидировать почти на всех платформах, впервые обойдя HHVM (чем больше запросов, тем лучше):
- WordPress 4.9.4 PHP 7.2 производительность: 148.80 запросов в секунду.
- WordPress 4.9.4 HHVM производительность: 144,76 запросов в секунду.
- WordPress 4.9.4 + WooCommerce 3.3.1 PHP 7.2 производительность: 92.60 запросов в секунду.
- WordPress 4.9.4 + WooCommerce 3.3.1 HHVM производительность: 69,58 запросов в секунду.
Поэтому с 28 августа 2018 года Кинста прекратила предлагать HHVM. Во-первых, потому что это больше не является стабильным решением для WordPress, а во-вторых, потому что HHVM, после версии 3.30, не поддерживает PHP.
На самом деле это хорошая новость как для разработчиков, так и для конечных пользователей, так как это означает, что мы должны сосредоточиться на PHP и делать более быстрые веб-сайты и веб-сервисы для всех. Таким образом, в этом году все ориентированы на PHP!
Ниже вы увидите, как работает последняя версия PHP 7.3 (выпущенная 6 декабря 2018 года), а также WordPress 5.0 (по иронии судьбы также выпущенная 6 декабря 2018 года).
С уходом HHVM из поля зрения, 2019 год стал годом PHP. И PHP 7.3 работает быстро!
Производительность PHP (2019)
Для каждого теста использовалась последняя версия каждой платформы и в течение 1 минуты измерялась производительность домашней страницы с 15 одновременными пользователями. Ниже приведены подробности тестовой среды.
- Используемый сервер: 8x Intel(R) Xeon(R) CPU @ 2.20GHz (работает на Google Cloud Platform и работает в изолированном контейнере)
- ОС: Ubuntu 18.04.1 LTS (Bionic Beaver)
- Docker кластер: Debian 9, Nginx 1.15.7, MariaDB 10.3.11
- Версия PHP: 5.6, 7.0, 7.1, 7.2, 7.3
- Кэширование страниц: отключено на всех конфигурациях и платформах.
- OPCache: для WordPress, Joomla и Drupal использовался официальный образ Docker и был создан свой собственный для PHP 7.3. В остальном использовался тот же образ настройки с включенным OPcache, используя рекомендуемые настройки php.ini, за исключением значения opcache.max_accelerated_files которое было увеличено с 4000 до 50000.
opcache.memory_consumption=128 opcache.interned_strings_buffer=8 opcache.max_accelerated_files=50000 opcache.revalidate_freq=60 opcache.fast_shutdown=1 opcache.enable_cli=1
OPcache повышает производительность PHP, сохраняя байт-код предварительно скомпилированного скрипта в общей памяти, тем самым устраняя необходимость PHP загружать и анализировать скрипты при каждом запросе.
Тесты были выполнены Ториком Фирдаусом (Thoriq Firdaus), автором и инженером поддержки WordPress в Kinsta. Он принимал участие в WordPress Core и редактировал переводы для WordPress Индонезия.
Протестированные платформы и конфигурации
Тесты включают следующие 23 платформы/конфигурации. В некоторых случаях приходилось тестировать несколько версий из-за отсутствия поддержки конкретной версии PHP. Выберите один из пунктов ниже, чтобы перейти непосредственно к заметкам и результатам тестирования. Данные измеряются количеством запросов в секунду. Чем больше запросов, тем лучше.
- WordPress 5.0
- WordPress 5.0 + WooCommerce 3.5.2
- WordPress 5.0 + Easy Digital Downloads 2.9.9
- WordPress 5.0.2
- WordPress 4.9.8
- WordPress 4.9.8 + WooCommerce 3.5.2
- WordPress 4.9.8 + Easy Digital Downloads 2.9.9
- Drupal 8.6.4
- Joomla! 3.9.1
- Magento 2 (CE) 2.1.15 + 2.3.0
- Grav CMS 1.5.5
- October CMS 1.0.443
- Laravel 5.4.36 + 5.7.15
- Symfony 3.3.6 + 4.2.0
- CodeIgniter 3.1.9
- PyroCMS 3.5.3
- Pagekit 1.0.15
- Bolt CMS 3.6.3
- Anchor CMS 0.12.7
- Craft CMS 3.0.35
- ExpressionEngine 5.0.2
В связи с тем, что демонстрационный контент на каждой платформе может сильно различаться, было решено тестировать сырую производительность с настройками по умолчанию сразу после инсталляции.
Была протестирована производительность 23 платформ / конфигураций на 5 разных версиях PHP и PHP 7.3 победила в 20 из 20 (3 не поддерживают)!
WordPress 5.0
Тестирование начали, конечно, с WordPress. WordPress это программное обеспечение с открытым исходным кодом, которое можно использовать для создания веб-сайта, блога или приложения. Фактически, на WordPress работает более 32% всех веб-сайтов в Интернете. Да, более чем один из четырех веб-сайтов, который вы посещаете, работает на WordPress.
Начали с WordPress 5.0, так как это версия, которая, вероятно, вас всех сейчас интересует. Использовали новую тему Twenty Nineteen (1.0) и в течение минуты тестировали сайт с 15 одновременными пользователями.
- URL: /hello-world/
- Примечание: страница содержит 1 комментарий.
- Образ Docker взят из https://hub.docker.com/_/wordpress/, и был создан свой собственный для PHP 7.3.
– WordPress 5.0, производительность PHP
Результаты тестов
- WordPress 5.0, PHP 5.6 производительность: 91,64 запросов в секунду
- WordPress 5.0, PHP 7.0 производительность: 206,71 запросов в секунду
- WordPress 5.0, PHP 7.1 производительность: 210,98 запросов в секунду
- WordPress 5.0, PHP 7.2 производительность: 229,18 запросов в секунду
- WordPress 5.0, PHP 7.3 производительность: 253,20 запросов в секунду
PHP 7.3 – победитель, оказался быстрее, чем PHP 7.2. И если вы сравните PHP 7.3 с PHP 5.6, он может обработать почти в 3 раза больше запросов (транзакций) в секунду!
WordPress 5.0 + WooCommerce 3.5.2
WooCommerce – это полностью настраиваемая платформа электронной коммерции с открытым исходным кодом, созданная для WordPress. Безусловно, это одно из самых популярных решений для электронной коммерции в сообществе WordPress, и в настоящее время им пользуется более чем 14% всех сайтов электронной коммерции.
Для следующего теста использовался WordPress вместе с установленной WooCommerce. Мы использовали бесплатную тему электронной коммерции Storefront (2.4.1).
- URL: /product/woo-logo/
- Примечание: на странице содержится 3 сопутствующих товара, 1 обзор/комментарий о товаре, 1 товар в разделе «Вам также может понравиться», следующая и предыдущая страницы пагинации с товарами.
- Образ Docker взят из https://hub.docker.com/_/wordpress/, и мы создали свой собственный для PHP 7.3.
– WordPress 5.0 + WooCommerce, производительность PHP
Результаты тестов
- WordPress 5.0 + WooCommerce 3.5.2, PHP 5.6 производительность: 24,74 запрос./сек.
- WordPress 5.0 + WooCommerce 3.5.2, PHP 7.0 производительность: 56,94 запрос./сек.
- WordPress 5.0 + WooCommerce 3.5.2, PHP 7.1 производительность: 57,00 запрос./сек.
- WordPress 5.0 + WooCommerce 3.5.2, PHP 7.2 производительность: 63.10 запрос./сек.
- WordPress 5.0 + WooCommerce 3.5.2, PHP 7.3 производительность: 68,87 запрос./сек.
При запуске WooCommerce PHP 7.3 обогнал с небольшим отрывом PHP 7.2.
WordPress 5.0 + Easy Digital Downloads 2.9.9
Easy Digital Downloads (EDD), созданный Пиппином Уильямсоном (Pippin Williamson), является бесплатным плагином для электронной коммерции WordPress, цель которого – помочь создателям и разработчикам продавать цифровые продукты.
Посмотрев, как работает WooCommerce, мы взяли WordPress и установили Easy Digital Downloads. Мы использовали бесплатную тему EDD Starter (1.0).
- URL: /downloads/sample-product/
- Примечание: страница содержит 3 меню на панели навигации и виджет «Добавить в корзину».
- Образ Docker взят с https://hub.docker.com/_/wordpress/, и был создан свой собственный для PHP 7.3.
– WordPress + Easy Digital Downloads, производительность PHP
Результаты тестов
- WordPress 5.0 + EDD 2.9.9, PHP 5.6 производительность: 71,74 запрос./сек.
- WordPress 5.0 + EDD 2.9.9, PHP 7.0 производительность: 169,11 запрос./сек.
- WordPress 5.0 + EDD 2.9.9, PHP 7.1 производительность: 170,08 запрос./сек.
- WordPress 5.0 + EDD 2.9.9, PHP 7.2 производительность: 187,78 запрос./сек.
- WordPress 5.0 + EDD 2.9.9, PHP 7.3 производительность: 206,88 запрос./сек.
PHP 7.3 лидировал в тестах WordPress и Easy Digital Downloads. Вы также можете заметить, что EDD может обрабатывать в 3 раза больше запросов (транзакций) в секунду, если сравнивать с WooCommerce! Нет сомнений, что EDD – это просто более быстрое и легкое решение.
WordPress 5.0.2
Поскольку WordPress 5.0.2 был выпущен совсем недавно, мы подумали, что было бы интересно запустить тесты для 5.0.2.
Мы использовали новую тему Twenty Nineteen (1.0) и в течение минуты тестировали сайт с 15 одновременными пользователями.
- URL: /hello-world/
- Примечание: страница содержит 1 комментарий.
- Образ Docker взят из https://hub.docker.com/_/wordpress/ и мы создали свой собственный для PHP 7.3.
– WordPress 5.0.2, производительность PHP
Результаты тестов
- WordPress 5.0.2, PHP 5.6 производительность: 88,62 запрос./сек.
- WordPress 5.0.2, PHP 7.0 производительность: 205,06 запрос./сек.
- WordPress 5.0.2, PHP 7.1 производительность: 207,34 запрос./сек.
- WordPress 5.0.2, PHP 7.2 производительность: 219,01 запрос./сек.
- WordPress 5.0.2, PHP 7.3 производительность: 241,27 запрос./сек.
PHP 7.3 снова взял золото, но WordPress 5.0.2 был немного медленнее, чем версия 5.0.
WordPress 4.9.8
Так как WordPress 5.0 был выпущен совсем недавно, мы подумали, что было бы интересно запустить тесты для 4.9.8, так как многие из вас, вероятно, еще не обновились. Или вам может быть интересно, работает ли WordPress 5.0 быстрее или медленнее.
Мы использовали новую тему Twenty Nineteen (1.0) и в течение минуты тестировали сайт с 15 одновременными пользователями.
- URL: /hello-world/
- Примечание: страница содержит 1 комментарий.
- Образ Docker взятс https://hub.docker.com/_/wordpress/, и был создан свой собственный для PHP 7.3.
– WordPress 4.9.8, производительность PHP
Результаты тестов
- WordPress 4.9.8, PHP 5.6 производительность: 97,59 запрос./сек.
- WordPress 4.9.8, PHP 7.0 производительность: 221,42 запрос./сек.
- WordPress 4.9.8, PHP 7.1 производительность: 233,78 запрос./сек.
- WordPress 4.9.8, PHP 7.2 производительность: 250,36 запрос./сек.
- WordPress 4.9.8, PHP 7.3 производительность: 276,31 запрос./сек.
PHP 7.3 был победителем, оказавшись быстрее, чем PHP 7.2. И если вы сравните PHP 7.3 с PHP 5.6, он может обрабатывать почти в 3 раза больше запросов в секунду!
Однако наиболее интересным является то, что WordPress 4.9.8 работает быстрее, чем WordPress 5.0. Это нас не слишком удивляет, так как весь проект WordPress 5.0 был выпущен в спешке. В будущем можете ожидать лучших результатов с WordPress 5.0, поскольку разработчики продолжают усовершенствовать его.
Вы впервые услышали об этом от нас, WordPress 4.9.8 работает быстрее, чем WordPress 5.0.
WordPress 4.9.8 + WooCommerce 3.5.2
Также провели тесты производительности на WordPress 4.9.8 и WooCommerce 3.5.2.
Для следующего теста мы взяли WordPress вместе с установленной WooCommerce. Мы использовали бесплатную тему электронной коммерции Storefront (2.4.1).
- URL: /product/woo-logo/
- Примечание: на странице содержится 3 сопутствующих товара, 1 обзор/комментарий о товаре, 1 товар в разделе «Вам также может понравиться», следующая и предыдущая страницы пагинации с товарами.
- Образ Docker взят из https://hub.docker.com/_/wordpress/, и был создан свой собственный для PHP 7.3.
– WordPress 4.9.8 + WooCommerce, производительность PHP
Результаты тестов
- WordPress 4.9.8 + WooCommerce 3.5.2, PHP 5.6 производительность: 26.07 запрос./сек.
- WordPress 4.9.8 + WooCommerce 3.5.2, PHP 7.0 производительность: 60,37 запрос./сек.
- WordPress 4.9.8 + WooCommerce 3.5.2, PHP 7.1 производительность: 60.36 запрос./сек.
- WordPress 4.9.8 + WooCommerce 3.5.2, PHP 7.2 производительность: 63.33 запрос./сек.
- WordPress 4.9.8 + WooCommerce 3.5.2, PHP 7.3 производительность: 69.24 запрос./сек.
PHP 7.3 опередил PHP 7.2 с небольшим отрывом. WordPress 4.8.9 с WooCommerce также был немного быстрее, чем WordPress 5.0.
WordPress 4.9.8 + Easy Digital Downloads 2.9.9
Также провели тесты производительности с WordPress 4.9.8 и Easy Digital Downloads 2.9.9.
Мы взяли WordPress вместе с Easy Digital Downloads и использовали бесплатную версию EDD Starter Theme (1.0).
- URL: /downloads/sample-product/
- Примечание: страница содержит 3 меню на панели навигации и виджет «Добавить в корзину».
- Образ Docker взят с https://hub.docker.com/_/wordpress/, и был создан свой собственный для PHP 7.3.
– WordPress 4.9.8 + Easy Digital Downloads, производительность PHP
Результаты тестов
- WordPress 4.9.8 + EDD 2.9.9, PHP 5.6 производительность: 80,08 запрос./сек.
- WordPress 4.9.8 + EDD 2.9.9, PHP 7.0 производительность: 186,99 запрос./сек.
- WordPress 4.9.8 + EDD 2.9.9, PHP 7.1 производительность: 185.40 запрос./сек.
- WordPress 4.9.8 + EDD 2.9.9, PHP 7.2 производительность: 192.73 запрос./сек.
- WordPress 4.9.8 + EDD 2.9.9, PHP 7.3 производительность: 211,37 запрос./сек.
PHP 7.3 лидирует в тестах с WordPress и Easy Digital Downloads. WordPress 4.9.8 с EDD также был немного быстрее, чем WordPress 5.0.
Drupal 8.6.4
Drupal – это CMS с открытым исходным кодом, популярная благодаря своей модульной системе и сильному сообществу разработчиков. Он был запущен в 2000 году и, согласно W3Techs, используется на 1,9% всех веб-сайтов и занимает долю 5,5% на рынке систем управления контентом.
Для теста Drupal мы использовали бесплатную тему Bartik (8.6.4).
- URL: /node/1
- Примечание: страница содержит заголовок, абзац и виджет (Поиск). Кэширование страниц отключено: https://www.drupal.org/node/2598914
- Образ Docker взят с https://hub.docker.com/_/drupal/, и был создан свой собственный для PHP 7.3.
– Drupal, производительность PHP
Результаты тестов
- Drupal 8.6.4, PHP 5.6 производительность: 14,19 запрос./сек.
- Drupal 8.6.4, PHP 7.0 производительность: 30,30 запрос./сек.
- Drupal 8.6.4, PHP 7.1 производительность: 30,42 запрос./сек.
- Drupal 8.6.4, PHP 7.2 производительность: 32,59 запрос./сек.
- Drupal 8.6.4, PHP 7.3 производительность: 35,90 запрос./сек.
При работе с Drupal PHP 7.3 победил PHP 7.2 с небольшим отрывом.
Joomla! 3.9.1
Joomla! это бесплатная CMS с открытым исходным кодом для публикации веб-контента, первоначально выпущенная 17 августа 2005 года. Она построена по принципу MVC “модуль – вид – контролер. Согласно W3Techs, 3,0% веб-сайтов в Интернете используют Joomla!.
Для тестирования Joomla! мы использовали бесплатный шаблон Beez3.
- URL: /index.php/3-welcome-to-your-blog
- Примечание: установка в режиме «Блог». Модули Joomla, такие как Поиск, Виджет и Хлебные крошки (breadcrumb), все отключены.
- Образ Docker взят с https://hub.docker.com/_/joomla/ и был создан свой собственный для PHP 7.3.
– Joomla!, производительность PHP
Результаты тестов
- Joomla! 3.9.1, PHP 5.6 производительность: 27,45 запрос./сек.
- Joomla! 3.9.1, PHP 7.0 производительность: 38,48 запрос./сек.
- Joomla! 3.9.1, PHP 7.1 производительность: 37,79 запрос./сек.
- Joomla! 3.9.1, PHP 7.2 производительность: 38,68 запрос./сек.
- Joomla! 3.9.1, PHP 7.3 производительность: 41,03 запрос./сек.
На Joomla! мы видим, что производительность была невысокой по сравнению с некоторыми другими платформами. Тем не менее, PHP 7.3 все еще победитель.
Magento 2 (CE) 2.1.15 + 2.3.0
Magento – это популярная платформа электронной коммерции с открытым исходным кодом, написанная на PHP и выпущенная 31 марта 2008 года. Согласно W3Techs, она обеспечивает работу 1,0% всех веб-сайтов в Интернете.
Для тестирования Magento 2 использовалась бесплатная темя Luma. Мы использовали две версии из-за того, что 2.1.15 была единственной, которая поддерживала PHP 5.6. Для дополнительных тестов мы использовали 2.3.0. Magento 2 пока не поддерживает PHP 7.3.
- URL: /index.php/lifelong-fitness-iv.html
- Примечание: кэширование страниц отключено. Протестированный URL-адрес является страницей одного продукта. Он содержит одно изображение продукта, панель навигации, навигацию по хлебным крошкам и никаких обзоров.
- http://pubfiles.nexcess.net/magento/ce-packages/
– Magento 2, производительность PHP
Результаты тестов
- Magento 2 (CE) 2.1.15, PHP 5.6 производительность: 7,65 запрос./сек.
- Magento 2 (CE) 2.1.15, PHP 7.0 производительность: 16,19 запрос./сек.
- Magento 2 (CE) 2.1.15, PHP 7.1 производительность: 16,38 запрос./сек.
- Magento 2 (CE) 2.3.0, PHP 7.1 производительность: 13,60 запрос./сек.
- Magento 2 (CE) 2.3.0, PHP 7.2 производительность: 14,25 запрос./сек.
- Magento 2 (CE) 2.3.0, PHP 7.3 производительность: не поддерживается
Фактически, более старая версия, Magento 2 (CE) 2.1.15 вместе с PHP 7.1 была самой быстрой.
Grav CMS 1.5.5
Grav – это простая в использовании, но мощная CMS с открытым исходным кодом, не требующая базы данных. Её также иногда называют плоской CMS.
Для теста Grav CMS использовался бесплатный Clean Blog skeleton package.
- URL: /home/the-urban-jungle
- Примечание: контент – это простой пост в блоге одним столбцом без боковой панели.
– Grav CMS, производительность PHP
Результаты тестов
- Grav CMS 1.5.5, PHP 5.6 производительность: 42,62 запрос./сек.
- Grav CMS 1.5.5, PHP 7.0 производительность: 64,43 запрос./сек.
- Grav CMS 1.5.5, PHP 7.1 производительность: 63,74 запрос./сек.
- Grav CMS 1.5.5, PHP 7.2 производительность: 65,26 запрос./сек.
- Grav CMS 1.5.5, PHP 7.3 производительность: 68,34 запрос./сек.
С Grav CMS мы видим, что победила последняя версия PHP 7.3.
October CMS 1.0.443
October CMS – это бесплатная модульная платформа CMS с открытым исходным кодом, размещенная на собственной платформе, основанная на Laravel PHP Framework. Первоначально он был выпущен 15 мая 2014 года.
Для тестирования October CMS мы использовали бесплатную тему Clean Blog. Важно отметить, что October CMS больше не совместим с PHP 5.6. Несмотря на то, что мы смогли обмануть установщик, убрав проверку PHP, все равно получили результат с кодом ошибки 500 в мастере настройки.
- URL: /blog/post/first-blog-post
– October CMS, производительность PHP
Результаты тестов
- October CMS 1.0.443, PHP 5.6 производительность: не поддерживается
- October CMS 1.0.443, PHP 7.0 производительность: 23,29 запрос./сек.
- October CMS 1.0.443, PHP 7.1 производительность: 22,97 запрос./сек.
- October CMS 1.0.443, PHP 7.2 производительность: 23,38 запрос./сек.
- October CMS 1.0.443, PHP 7.3 производительность: 25.58 запрос./сек.
PHP 7.3 снова становится победителем, хотя и с небольшим отрывом.
Также приятно видеть, что эта небольшая система управления контентом отказывается от поддержки старых версий PHP. Это преимущество небольших систем в отличии от WordPress или других платформ с большой долей рынка, у которых этот процесс происходит медленнее из-за проблем совместимости.
Laravel 5.4.36 + 5.7.15
Laravel – очень популярный PHP-фреймворк с открытым исходным кодом, используемый для разработки веб-приложений. Он был создан Taylor Otwell и выпущен в июне 2011 года.
Для теста Laravel мы использовали простую тему HTML.
- URL: / (homepage)
- Пост содержит название, имя автора и основной контент. База данных содержит 1 таблицу “posts”.
- Таблица содержит 6 столбцов «post_title», «post_content», «post_author», «creation_at» и «updated_at».
- Протестированный URL-адрес подключен к базе данных и показывает 1 сообщение из базы данных.
– Laravel 5.4.36, производительность PHP
Результаты тестов
- Laravel 5.4.36, PHP 5.6 производительность: 340,26 запрос./сек.
- Laravel 5.4.36, PHP 7.0 производительность: 610,81 запрос./сек.
- Laravel 5.4.36, PHP 7.1 производительность: 616,93 запрос./сек.
- Laravel 5.4.36, PHP 7.2 производительность: 692,86 запрос./сек.
- Laravel 5.4.36, PHP 7.3 производительность: 717,06 запрос./сек.
PHP 7.3 – здесь явный победитель. Отметим также рост производительности двух последних версий PHP.
Важно отметить, что для Laravel 5.7.15 требуется PHP 7.1 или выше.
– Laravel 5.7.15, производительность PHP
Результаты тестов
- Laravel 5.7.15, PHP 5.6 производительность: не поддерживается
- Laravel 5.7.15, PHP 7.0 производительность: не поддерживается
- Laravel 5.7.15, PHP 7.1 производительность: 542,16 запрос./сек.
- Laravel 5.7.15, PHP 7.2 производительность: 606.73 запрос./сек.
- Laravel 5.7.15, PHP 7.3 производительность: 621,09 запрос./сек.
Опять же, PHP 7.3 победил и здесь. Однако, что интересно, Laravel 5.4.36 с PHP 7.3 оказался быстрее, чем Laravel 5.7.15.
Symfony 3.3.6 + 4.2.0
Symfony – это набор повторно используемых PHP-компонентов и PHP-фреймворк для создания веб-приложений, API, микросервисов и веб-сервисов. Выпущен 22 октября 2005 г.
Для тестирования Symfony мы использовали Symfony Demo с MySQL (по умолчанию используется SQLite). Тесты были проведены несколько раз, и были взяты средние значения.
- URL: /en/blog/posts/hello-world
- Пост содержит заголовок, дату, имя автора, 2 тега и 5 комментариев.
- Самая ранняя версия Symfony/demo, которую нам удалось получить – 3.3.6, но её поддержка уже не осуществляется. Мы использовали её, так как это единственное оставшееся демо-приложение Symfony, которое может работать на PHP 5.6. Последняя версия может работать только в версии 7.1 и выше. Результат немного медленнее по сравнению с тестом проводимым ранее. Возможно, это связано с тем, что на одной странице запрашивается больше таблиц, чем на главной странице (комментарии).
– Symfony 3.3.6, производительность PHP
Результаты тестов
- Symfony 3.3.6, PHP 5.6 производительность: 71,71 запрос./сек.
- Symfony 3.3.6, PHP 7.0 производительность: 155,08 запрос./сек.
- Symfony 3.3.6, PHP 7.1 производительность: 158,88 запрос./сек.
- Symfony 3.3.6, PHP 7.2 производительность: 169,78 запрос./сек.
- Symfony 3.3.6, PHP 7.3 производительность: не поддерживается.
Поскольку Symfony 3.3.6 не поддерживает PHP 7.3, в этом тесте выигрывает PHP 7.2.
Важно отметить, что для Symfony 4.2.0 требуется PHP 7.1 или выше.
– Symfony 4.2.0, производительность PHP
Результаты тестов
- Symfony 4.2.0, PHP 5.6 производительность: не поддерживаются
- Symfony 4.2.0, PHP 7.0 производительность: не поддерживается
- Symfony 4.2.0, PHP 7.1 производительность: 123,64 запрос./сек.
- Symfony 4.2.0, PHP 7.2 производительность: 126,76 запрос./сек.
- Symfony 4.2.0, PHP 7.3 производительность: 140,09 запрос./сек.
PHP 7.3 снова на высоте.
CodeIgniter 3.1.9
CodeIgniter – это мощный, но компактный PHP-фреймворк, созданный для разработчиков, которым необходим простой и элегантный инструментарий для создания полнофункциональных веб-приложений.
- URL: / (homepage)
- Примечание. Домашняя страница содержит контент (заголовок и основной текст), полученный из таблицы базы данных.
– CodeIgniter, производительность PHP
Результаты тестов
- CodeIgniter 3.1.9, PHP 5.6 производительность: 708,31 запрос./сек.
- CodeIgniter 3.1.9, PHP 7.0 производительность: 855,08 запрос./сек.
- CodeIgniter 3.1.9, PHP 7.1 производительность: 872,79 запрос./сек.
- CodeIgniter 3.1.9, PHP 7.2 производительность: 883,88 запрос./сек.
- CodeIgniter 3.1.9, PHP 7.3 производительность: 889,67 запрос./сек.
Как и в случае с Laravel и Symfony, PHP 7.3 был самым быстрым при запуске CodeIgniter.
PyroCMS 3.5.3
PyroCMS c открытым исходным кодом, по сути, является расширением Laravel, которое позволяет быстрее создавать веб-сайты и приложения.
Для теста PyroCMS мы использовали бесплатную стартовую тему.
- URL: /posts/welcome-to-pyrocms
- Примечание: PyroCMS не поддерживает PHP 5.6. Мы также столкнулись с ошибками при запуске, пытаясь запустить его на PHP 7.3, скорее всего, потому что он еще не поддерживается. Поэтому мы не смогли включить PHP 7.3 в тесты.
– PyroCMS, производительность PHP
Результаты тестов
- PyroCMS 3.5.3, PHP 5.6 производительность: не поддерживаются
- PyroCMS 3.5.3, PHP 7.0 производительность: 33,56 запрос./сек.
- PyroCMS 3.5.3, PHP 7.1 производительность: 34,87 запрос./сек.
- PyroCMS 3.5.3, PHP 7.2 производительность: 36,12 запрос./сек.
- PyroCMS 3.5.3, PHP 7.3 производительность: не поддерживается
Из-за того, что PHP 7.3 еще не работает с PyroCMS, в этот раз, с небольшим отрывом, выиграл PHP 7.2.
Pagekit 1.0.15
Pagekit – модульная и легкая CMS с открытым исходным кодом, основанная YOOtheme. Она дает вам инструменты для создания красивых сайтов. Была выпущена весной 2016 года.
Для теста Pagekit мы использовали бесплатную тему One ( по умолчанию тема Pagekit).
- URL: /blog/1
– Pagekit, производительность PHP
Результаты тестов
- Pagekit 1.0.15, PHP 5.6 производительность: 133,11 запрос./сек.
- Pagekit 1.0.15, PHP 7.0 производительность: 226,29 запрос./сек.
- Pagekit 1.0.15, PHP 7.1 производительность: 227,42 запрос./сек.
- Pagekit 1.0.15, PHP 7.2 производительность: 238,00 запрос./сек.
- Pagekit 1.0.15, PHP 7.3 производительность: 244,77 запрос./сек.
PHP 7.3 выиграл золотую медаль при тестировании с Pagekit.
Bolt CMS 3.6.3
Bolt CMS или просто Bolt, является инструментом управления контентом с открытым исходным кодом, который стремится быть максимально простым и понятным. Он основан на компонентах Silex и Symfony, использует Twig и SQLite, MySQL или PostgreSQL.
Для теста Bolt CMS мы использовали бесплатную тему Bolt Base 2018.
- URL: /page/hello-world
- Примечание. Контент, созданный с помощью встроенного генератора случайного контента.
– Bolt CMS, производительность PHP
Результаты тестов
- Bolt CMS 3.6.3 PHP 5.6 производительность: 33,01 запрос./сек.
- Bolt CMS 3.6.3, PHP 7.0 производительность: 75,69 запрос./сек.
- Bolt CMS 3.6.3, PHP 7.1 производительность: 76,02 запрос./сек.
- Bolt CMS 3.6.3, PHP 7.2 производительность: 77,38 запрос./сек.
- Bolt CMS 3.6.3, PHP 7.3 производительность: 83,81 запрос./сек.
PHP 7.3 победил при тестировании с Bolt CMS.
Anchor CMS 0.12.7
Anchor – это очень простая в использовании и легкая система с открытым исходным кодом для блогов, созданная чтобы вы могли просто писать.
Для тестирования Anchor CMS мы использовали бесплатную тему по умолчанию от Visual Idiot.
- URL: /posts/hello-world
– Anchor CMS, производительность PHP
Результаты тестов
- Anchor CMS 0.12.7, PHP 5.6 производительность: 559,02 запрос./сек.
- Anchor CMS 0.12.7, PHP 7.0 производительность: 677,48 запрос./сек.
- Anchor CMS 0.12.7, PHP 7.1 производительность: 691,45 запрос./сек.
- Anchor CMS 0.12.7, PHP 7.2 производительность: 713,37 запрос./сек.
- Anchor CMS 0.12.7, PHP 7.3 производительность: 728,96 запрос./сек.
PHP 7.3 взял золото при тестировании с Anchor CMS.
Craft CMS 3.0.35
Craft CMS – это целенаправленная система управления контентом для разработчиков, дизайнеров и веб-профессионалов, которая сочетает в себе гибкость, мощность и простоту использования для клиентов.
- URL: /news/hello-world
- Протестировано демо-приложение с https://github.com/craftcms/demo
– Craft CMS, производительность PHP
Результаты тестов
- Craft CMS 3.0.35, PHP 5.6 производительность: не поддерживается
- Craft CMS 3.0.35, PHP 7.0 производительность: 57,46 запрос./сек.
- Craft CMS 3.0.35, PHP 7.1 производительность: 58,81 запрос./сек.
- Craft CMS 3.0.35, PHP 7.2 производительность: 59,19 запрос./сек.
- Craft CMS 3.0.35, PHP 7.3 производительность: 59,64 запрос./сек.
PHP 7.3 победил при тестировании с Craft CMS.
ExpressionEngine 5.0.2
ExpressionEngine – это гибкая, многофункциональная платформа управления контентом, которая позволяет сотням тысяч людей и организаций по всему миру легко управлять своим веб-сайтом и отлично подходит для новостных сайтов и блогов.
Для теста ExpressionEngine мы использовали тему по умолчанию.
- URL: /blog/entry/super-old-entry
- Примечание. На странице имеется боковая панель с 3 виджетами (поиск, список категорий и ссылка на RSS-канал). На странице также имеется навигационная панель.
– ExpressionEngine, производительность
Результаты тестов
- ExpressionEngine 5.0.2, PHP 5.6 производительность: не поддерживаются
- ExpressionEngine 5.0.2, PHP 7.0 производительность: 53,50 запрос./сек.
- ExpressionEngine 5.0.2, PHP 7.1 производительность: 53,83 запрос./сек.
- ExpressionEngine 5.0.2, PHP 7.2 производительность: 55,23 запрос./сек.
- ExpressionEngine 5.0.2, PHP 7.3 производительность: 56,15 запрос./сек.
PHP 7.3 при тестировании с ExpressionEngine показал лучший результат.
Вывод из результатов тестирования
Как видно из приведенных выше тестов, PHP 7.3 лидирует в плане производительности на всех платформах.
Мы протестировали производительность 23 платформ/конфигураций на 5 разных версиях PHP, и PHP 7.3 лучший в 20 из 20 (3 не поддерживаются)!
- PHP 7.3 был самым быстрым движком в 20 из 23 протестированных конфигураций. И единственная причина почему он не победил во всех тестах, только в том, что Magento 2, Symfony 3.3.6 и PyroCMS 3.5.3 еще не полностью поддерживают PHP 7.3.
- Что касается WordPress, PHP 7.3 был самым быстрым во всех тестах (стандартный сайт на WordPress 4.9.8 и 5.0, WooCommerce и Easy Digital Downloads).
- Во многих результатах тестов вы можете заметить увеличение производительности с каждой новой версией PHP. Вот почему так важно тестировать свой сайт, плагины, т. д. и стараться регулярно обновлять свои сайты. Ваши посетители и клиенты будут вам благодарны за скорость, которую они ждали!
- Если ваш хостинг-провайдер не предлагает более новые версии PHP, возможно, пришло время подумать о переезде.
PHP 7.3 очень порадовал нас, надеемся, что и вас тоже!
Переведено TutHost c оригинала: https://kinsta.com/blog/php-benchmarks