1 июля 2016 компания 1С:Битрикс анонсировала 16.5 версию платформы "Управление сайтом", а так же поддержку PHP 7. Это отличная новость, так как по различным тестам PHP 7 работает примерно в 2-3 раза быстрее, своих предшественников. Не только теоретически, а в некоторых случаях вполне себе практически. В материале проверим скорость работы платформы 1С:Битрикс c PHP7 на деле.

Новая версия PHP 7 так же снижает нагрузку и на аппаратную часть хостинга, поэтому переход рекомендован ВСЕМ! А в особенности тем, кого хостинг ругает за превышение установленных лимитов на процессорное время, проще говоря за слишком высокую нагрузку на процессор.

В текущем материале рассматривается сайт размещенный на хостинге TimeWeb. Для других хостингов процедура почти аналогичная, если они конечно уже поддерживают новую версию PHP 7. Так же сравним скорость работы.

Исходные данные

  • Сайт: https://clite.ru (Копия развернутая в TimeWeb)
  • Версия PHP: 5.6
  • Хостинг: TimeWeb Eterno

Оценка производительности:

5.6.png

78.06 - это хороший результат и соответствует примерному времени (1/78.06 ~ 0,012820513 секунды), для генерации главной страницы.

Подготовка

  1. Делаем резервную копию. В timeweb автоматически делаются три бэкапа (на три даты), можно просто удостовериться, что они есть в панели управления хостингом.
  2. Так как мы будем редактировать конфигурационные файлы хостинга, важно не допускать в них ошибок, иначе сайт перестанет открываться. Поэтому редактирование лучше выполнять, через интерфейс панели управления хостинга или используя SSH/FTP.
  3. Убеждаемся, что конфигурация хостинга корректна для платформы 1С:Битрикс "Управление сайтом". Для этого запускаем проверку системы в административном интерфейса сайта (Настройки > Инструменты > Проверка системы).
Проверка системы 1C:Bitrix
В результатах проверки не должно быть ошибок, обычно они выделены красным.

Переводим сайт на работу с PHP 7

  1. Проверяем, что используется новая версия драйвера базы данных: MySqli. Как проверить и как перейти на новую версию, описано тут.
  2. Меняем версию PHP в настройках хостинга
    Настройка хостинга
  3. Корректируем в файле .htaccess 1 цифру, важно файл в корневой директории сайта
    Настройка хостинга
  4. Снова запускаем проверку сайта из административной части и убеждаемся, что не появились ошибки. См. пункт 3 в разделе "Подготовка".
  5. В административной панели в разделе "Настройки > Производительность > PHP" проверяем версию PHP. Минимально допустимая 7.0.8. В предыдущих версиях были серьезные ошибки. Для некоторых из них был сделан workaround в ядре Битрикса, но не для всех.

А теперь самое интересное

Снова проведем оценку производительности и увидим:

Оценка производительности 1C:Битрикс c php7

Как можно видеть, количество баллов производительности ("попугаев") увеличилось почти в два раза. По информации от 1С:Битрикс увеличение может достигать 3-х раз и учитывая получившиеся результаты, этому можно поверить.

Примечание
  1. Препятствием для перехода на PHP 7 может стать сторонний модуль из Marketplace.
  2. В самом языке PHP 7 ужесточились правила написания кода. Например, в статических/не статических методах и способах обращения к ним.
  3. После перехода на PHP 7 нельзя будет установить из Marketplace демо-версии платных модулей, если по ним не было выпущено обновлений после 1 июля 2016. Все это связано с изменением механизма защиты этих модулей.

Подводя итог можно сказать, что получить ускорение сайта на 1С:Битрикс за десять минут - это просто волшебство. Даже матерые программисты подтвердят, что никакая оптимизация кода никогда не даст такого прироста и так быстро.

Все желающие перевести свой Битрикс сайт на PHP 7, силами нашей команды (быстро и с обязательным бекапом). Напишите нам в группе вконтакте или через форму обратной связи