Доброго времени суток, уважаемое сообщество, был недавно случай, вот решил поделиться.
Итак, пришел клиент с уже проплаченным на год вперед хостингом с задачкой, установить новое битрикс-решение на сервер (честно, жутко не люблю таких, но меня редко спрашивают: все ищут подешевле...).
Как обычно перед началом установки, запускаем скрипт bitrix_server_test.php. Скрипт показывает несколько ошибок, в том числе и отсутствие прекомпилятора. Совместно с техподдержкой хостинга все ошибки устраняем, а вот по поводу прекомпилятору получаем ответ:
Вот так вот.
Сообщаем об этом клиенту. Получаем от него ответ:
Доброго времени суток.
Автор сих строк, простите, за дословный копипаст, но, считаю, что это проблема всех заказчиков, которые не понимают необходимость данного момента.
Вот мой ответ:
Вот такой вот диалог вышел.
Сообщество, жду от вас критики, если что не так говорю, или одобрения, если все так.
P.S.
вот ссылка на документацию по данному вопросу:
А вот достаточно интересная статья о сущности прекомпилятора:
Итак, пришел клиент с уже проплаченным на год вперед хостингом с задачкой, установить новое битрикс-решение на сервер (честно, жутко не люблю таких, но меня редко спрашивают: все ищут подешевле...).
Как обычно перед началом установки, запускаем скрипт bitrix_server_test.php. Скрипт показывает несколько ошибок, в том числе и отсутствие прекомпилятора. Совместно с техподдержкой хостинга все ошибки устраняем, а вот по поводу прекомпилятору получаем ответ:
| в рамках виртуального хостинга прекомпилятор установить нельзя |
Сообщаем об этом клиенту. Получаем от него ответ:
Доброго времени суток.
| Искренне не понимаю в чем проблема.Всё кроме прекомпилятора удалось сделать и настроить. Так мне объяснили. Почему он стал камнем преткновения? Открытые источники пишут:"Прекомпилятор- акселератор PHP. Выдержка из Wikipedia:программа,ускоряющая исполнение сценариев PHP интерпретатором путём кэшированияих байткода.Иными словами эта штука компилирует код, кэширует скомпилированную версию и при обращении к скрипту, выполняет его скомпилированную копию из кэша. Прекомпилятор является необязательным— Битрикс ставится и без него." .... |
Вот мой ответ:
| Добрый день. Обязательность наличия прекомпилятора в официальных технических требованиях не указана. Наличие прекомпилятора является необходимым требованием. В случае, если сайт будет представлять из себя набор статических файлов, т.е. на страницах сайта не будут использованы ни компоненты системы 1С-Битрикс, ни какой-либо другой php-код, то прекомпилятор не нужен (единственное место где будет заметно его отсутствие – это административный раздел, но количество пользователей, имеющих доступ в данный раздел ограничено, поэтому нагрузка не будет сильно заметна). В противном же случае, каждый раз при открытии одной и той же страницы (открытие страницы разными пользователями в одно время – это тоже разные открытия страницы), сервер будет выполнять 4 основных этапа выполнения php-кода: «лексический анализ кода»; «синтаксический анализ кода»;«генерация байт-кода»; выполнение «байт-кода», что является достаточно трудоемким процессом и при запуске одновременно нескольких таких процессов приведет к большим перегрузкам процессора сервера. Для того, чтобы таких перегрузок не было и используется прекомпилятор, который выполняет описанные шаги и результат их выполнения записывает в своем кеше. Это вкратце необходимость прекомпилятора. Мы можем установить систему на данный сервер, но, отсутствие прекомпилятора приведет к очень медленной работе публичной части сайта (при наличии каких-либоx php-частей на сайте), а также к увеличению трудозатрат при разработке каких-либо блоков на сайте (верстка готовых компонентов или разработка новых). |
Сообщество, жду от вас критики, если что не так говорю, или одобрения, если все так.
P.S.
вот ссылка на документацию по данному вопросу:
А вот достаточно интересная статья о сущности прекомпилятора:
