Zend opcache установка windows

Форум

Установка opcache

Установка opcache

Re: Установка opcache

Re: Установка opcache

Не получается включить opcache, раскомментировал zend_extension=»c:/openserver/modules/php/PHP-5.6-x64/ext/php_opcache.dll» в шаблоне PHP-5.6-x64 в файле php.ini, но после перезагрузки сервера, в php.ini опять всё закоментированно.

Подскажите что я делаю не так?

Re: Установка opcache

Re: Установка opcache

Непрочитанное сообщение Pashik » 06 май 2017, 13:41

chigolberi писал(а): Не получается включить opcache, раскомментировал zend_extension=»c:/openserver/modules/php/PHP-5.6-x64/ext/php_opcache.dll» в шаблоне PHP-5.6-x64 в файле php.ini, но после перезагрузки сервера, в php.ini опять всё закоментированно.

Подскажите что я делаю не так?

Re: Установка opcache

Re: Установка opcache

Так он работает или нет?
Там же написано в php.ini:

[opcache]
; Внимание! Данное расширение не работает под Windows.
; Возможно падение сервера в процессе работы или отказ запуска!

Похоже, что нет. Ответ Максима в одной из тем:

«Единственное на что следует обратить внимание — не пытайтесь подключить к PHP всяческие кэшеры байткода, т.к. они неработоспособны на Windows (абсолютно все неработоспособны для PHP всех версий). Речь идёт об APC, Eaccelerator, OPCache и прочих. Часть из них отваливается сразу, часть может поработать минуту, час, день, но потом рано или поздно отвалится и тем самым положит сервер. Так же не включайте расширенное ведение логов (это будет тормозить по диску) и обязательно выполните процедуру первого запуска согласно инструкции к программе.»

Вопрос знатокам

Непрочитанное сообщение Aiw » 24 окт 2018, 13:59

Вопрос знатокам
Почитал про Opcache, есть вопросы:

Zend opcache установка windows

Крайне рекомендуется использовать OpCache. Этот модуль идёт в составе дистрибутива для Windows. Модуль компилирует PHP-скрипт, оптимизирует его и кеширует в памяти , что позволяет не тратить время и ресурсы сервера на компиляцию скрипта при каждом запросе к нему.

Установите в вашем php.ini следующие опции

Пример #1 Рекомендованная конфигурация WinCache

WinCache

Если вы используете IIS, то рекомендуется вместе с ним использовать WinCache, особенно если используется виртуальный хостинг или сетевое хранилище (NAS). Все приложения PHP будут автоматически получать преимущества WinCache. Файловые операции будут кешироваться в памяти. Также WinCache может кешировать в памяти пользовательский объекты и разделять их между разными процессами php.exe или php-cgi.exe (разделение объектом между запросами). Многие веб-приложения имеют плагин, модуль или опции настройки, позволяющие использовать кеширование пользовательских объектов с помощью WinCache. Если вам нужна высокая производительность, вам придётся кешировать объекты в своём приложении. Загрузить WinCache можно по ссылке » http://pecl.php.net/package/WinCache. После загрузки будет нужно сохранить WinCache DLL в директорию модулей PHP (extensions_dir в вашем php.ini). Установите в вашем php.ini следующие опции

Пример #2 Рекомендованная конфигурация WinCache

Настройка IIS

В IIS Manager установите модуль FastCGI и добавьте обработку `.php` файлом PHP-CGI.exe (не PHP.exe )

Вы можете использовать приложение APPCMD из командной строки для автоматизации настройки ISS.

Читайте также:  Главное меню системы microsoft windows

База данных

Наверное вам понадобится сервер баз данных. Для всех популярных баз данных существуют модули PHP. Если ваш сайт не рассчитывается под высокую нагрузку, то сервер баз данных можно держать на том же хосте, что и веб-сервер. Под Windows доступно множество различных баз данных.

PHP модули включают mysqli и pdo_mysql. PHP 5.5 и 5.6 также включают модуль mysql, который объявлен устаревшим в 7.0.

Используем OPCache для повышения производительности PHP на веб сервере

Zend Opcache – это расширение PHP, предназначенное для повышения производительности PHP, сокращения времени загрузки веб-страниц и уменьшения нагрузки на сервере.

Производительность достигается путем компиляции кода PHP файлов при первом обращении к ним. В результате при следующем доступе сервер не тратит ресурсы на повторное чтение и компиляцию php файла, а отдает готовый результат из кэша opcache. Т.е. opcache дает хорошие результаты для cms/файлов php скриптов, код которых редко изменяется.

В данной статье мы рассмотрим установку расширения OPcache, его настройку и использование с веб-сервером apache на примере Linux CentOS.

Установка расширения OPcache

Перед установкой самого расширения, нужно подключить репозитории EPEL и remi, а затем обновить пакеты на сервере с помощью yum (dnf):

# dnf install epel-release -y
# dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm -y
# dnf update -y

Теперь можно установить opcahce для php:

# dnf install php-opcache -y

На этом установка расширения OPcache завершена.

Настройка параметров OPcache в конфигурационном файле

Конфигурационный файл OPCache находится в директории /etc/php.d. Откройте его и очистите от стандартных записей:

Добавьте следующие универсальные настройки, которые подходят для большинства php проектов:

После сохранения файла php.d перезапустите веб-сервера. В моем случае это apache:

# service httpd restart

Проверьт, что модуль Zend OPcache Engine подключён:

Модуль успешно подключен. Рассмотрим опции, которые мы исопльзовали в конфигурационном файле:

  • zend_extension=opcache.so – подключение модуля расширения
  • opcache.enable=1 — включение/отключение OPcache
  • opcache.memory_consumption=512 – размер памяти для хранения кэша
  • opcache.interned_strings_buffer=512 — размер памяти для пула строк
  • opcache.max_accelerated_files=100000 — максимальное количество ключей в хэн-таблице OPcache
  • opcache.max_wasted_percentage=1 – максимальный процент потерянной памяти, после которой планируется перезапуск
  • opcache.validate_timestamps=1 — включение возможности обнуления вручную или рестартом веб-сервера(регулируется opcache.validate_timestamps)
  • opcache.revalidate_freq=0 — промежуток, через который будет выполнена проверка изменения временных меток, для поддержания актуальности данных, 0 — постоянная проверка, любое другое значение количество секунд
  • opcache.fast_shutdown=1 — если параметр включен, то будет использована быстрая последовательность перезагрузки, при которой не происходит очистки всех выделенных блоков памяти.
  • opcache.save_comments=1 — если выключено, все комментарии будут отброшены из кеша опкодов для минимизации размера кода.
  • opcache.load_comments=1 — если выключено, то комментарии PHPDoc не будут загружаться из общей памяти.
  • opcache.blacklist_filename=/etc/php.d/opcache*.blacklist — местоположение списка php файлов, который OPcache должен пропускать. Файл содержит имена файлов, которые не нужно оптимизировать, по одной записи на строку. Допустимы шаблоны поиска и префиксы. Строки, начинающиеся с точки с запятой игнорируются

Более детальную настройку можно выполнить согласно официальной документации по OPcache.

Сравнение производительности популярных CMS при использовании OPcache

Использование OPcache на сервере обеспечит экономию ресурсов и сократит время загрузки страниц сайта, но есть и другие факторы по которым важно использовать данное расширение:

  • Многие поисковые системы отдают предпочтение сайтам, с более быстрой загрузкой;
  • Быстрый отклик сайта сокращает число отказов. Посетители сайта охотнее задерживаются на таких сайтах;
  • Увеличение конверсии, за счет высокой производительности сервера;
  • Сокращение расходом на оборудование (из-за экономии ресурсов сервера).

В работе с различными CMS, мы заметили, что почти с любым сайтом, можно добиться хорошего результата в производительности: Использование памяти и время загрузки популярных CMS сокращается в 2-3 раза.

Читайте также:  Работа с операционной системой класса windows

А если речь идет о CMS Bitrix, то ее разработчики настоятельно рекомендуют подключение данного расширения и при замерах производительности, тест сразу показывает, подключен у вас OPcache или нет.

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

Установка и настройка PHP OPcache

Установка PHP OPcache | Хостинг-провайдер Well-Web

Как увеличить производительность сервера на ОС CentOS. Часть вторая : Установка прекомпилятора PHP Zend OPcache.

В данной статье мы расскажем, как увеличить производительность виртуального сервера VPS на ОС CentOS путем установки прекомпилятора PHP Zend OPcache. Материал ориентирован на пользователей с небольшим багажом знаний в области администрирования, мы рассмотрим самые простые, и в тоже время действенные, способы повышения производительности сервера.

Установка прекомпилятора PHP Zend OPcache.

Прекомпилятор (кешер, акселератор) PHP ускоряет работу сайтов за счет кеширования скриптов PHP. На момент написания статьи, наиболее популярный и производительный прекомпилятор PHP — Zend OPcache, рассмотрим способы его установки на сервер.

Установка Zend OPcache через панель управления возможна, но практически никогда не выполняется корректно. Поэтому мы рекомендуем установить расширение из командной строки.

Установка Zend OPcache на сервер с любой панелью управления.

Вам понадобится SSH доступ к серверу и SSH клиент. Если на Вашем ПК установлена операционная система Linux — SSH клиент Вам не нужен, можете использовать для подключения по SSH стандартный Linux терминал. Владельцам компьютеров с ОС Windows мы рекомендуем использовать SSH\Telnet клиент Putty. Данная программа бесплатна и проста в использовании.

Скачать последнюю версию с официального сайта можете по ссылке.

Подключитесь к Вашему серверу по SSH от имени суперпользователя root или другого пользователя с аналогичными привилегиями.

Добавьте репозиторий remi. Чтобы добавить репозиторий remi на CentOS 6 используйте следующие команды :

wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm sudo rpm -Uvh remi-release-6*.rpm

Для установки репозитория remi на CentOS 7 используйте такие команды :

wget http://rpms.famillecollet.com/enterprise/remi-release-7.rpm sudo rpm -Uvh remi-release-7*.rpm

Проверьте текущую версию PHP с помощью команды:

Для версии PHP 5.4 используйте такую команду :

yum install —enablerepo=remi php-pecl-zendopcache

Для версии 5.5, используйте команду :

yum install —enablerepo=remi-php55 php-pecl-zendopcache

Для версии 5.6, используйте команду :

yum install —enablerepo=remi-php56 php-pecl-zendopcache

Для установки opcache на PHP 7 используйте такую команду :

yum install —enablerepo=remi-php70 php-pecl-zendopcache

После установки дополнения перезагрузите веб сервер. Для этого используйте команду :

service httpd restart

Если на Вашем сервере нет httpd — скорее всего работает связка Nginx + PHP-FPM, тогда перезагрузите PHP-FPM :

service php-fpm restart

После перезагрузки можете проверить корректность установки дополнения с помощью команды :

Если Opcache установлен корректно — под списком расширений Вы увидите подобные строки :

Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies С другими материалами по оптимизации настроек сервера можете ознакомиться по ссылкам :

Если у Вас возникнут трудности в настройке — всегда можете обратиться в нашу службу технической поддержки. Открыть тикет можете здесь.

PHP акселераторы на CentOS и VestaCP

Для уменьшения потребления памяти PHP и ускорения его работы рекомендуется использовать различные акселераторы. Особенно это актуально для бюджетных VPS с небольшим количеством оперативной памяти на которых крутятся сайты на прожорливых CMS типа WordPress.

Акселератор PHP — расширение для PHP, основное назначение которого — увеличение производительности интерпретатора при обработке сценариев путем кэширования их байт-кода.
Информация из Википедии

В данной статье расскажу как установить PHP акселератор на CentOS если вы используете панель управления хостингом VestaCP.

Читайте также:  Архангельский builder механизмы windows сети

Существующие акселераторы PHP

Для PHP версий 5.3, 5.4 актуальны следующие акселераторы:

  • APC — Alternative PHP Cache. Бесплатный и открытый opcode кэшер для PHP. Поддерживает PHP4 и PHP5, включая 5.3 и 5.4.
  • eAccelerator. Свободный открытый проект, выполняющий роли акселератора, оптимизатора и распаковщика. Поддерживает PHP4 и PHP5, включая 5.4
  • PhpExpress. Бесплатный ускоритель обработки php-скриптов на веб-сервере. Поддерживает PHP4 и PHP5, включая 5.3
  • XCache. Бесплатный. Поддерживает функции оптимизации скриптов, кэширования байткода. Поддерживает PHP4 и PHP5, включая 5.6
  • Zend OPcache. Обеспечивает более быстрое выполнение PHP кода операции через кэширование и оптимизации. Улучшает PHP производительность, сохраняя скомпилированные сценариев байт-кода в разделяемой памяти. Zend OPcache включен в PHP 5.5 по умолчанию. Как расширение PECL поддерживает версии 5.2, 5.3 и 5.4.

Если вы используете PHP 5.5, то в нем по-умолчанию идет Zend OPcache и ничего дополнительно ставить не нужно.
В сети полно тестов и сравнений различных акселераторов. Но в данной статье я не буду их приводить.

Какой кешер выбрать

Перелапатил интернет и понял, что в зависимости от версии PHP гуру рекомендуют следующее:

  • 5.3 — apc
  • 5.4 — ZendOpCache
  • 5.5 — ZendOpCache(по-умолчанию)

Но я везде использую ZendOpCache вне зависимости от версии PHP. Мой выбор основан на том, что он стоит по-умолчанию на PHP v5.5. А значит лучше других должен знать как оптимизировать работу PHP.

Как установить ZendOpCache на CentOS

Нельзя использовать несколько акселераторов одновременно. ZendOpCache конфликтует с другими акселераторами и/или наоборот, так что остальные акселераторы должны быть отключены.
VestaCP на CentOS по-умолчанию ставит (ставила) APC, удалите его если вы решили установить ZendOpCache на CentOS.

Установка ZendOpCache на php 5.4

Установка ZendOpCache на php 5.3

Проверим правильность установки ZendOpCache на CentOS

Оптимальные настройки Zend OPcache

Проверьте свой файл конфигурации /etc/php.d/opcache.ini
По информации в сети нижеследующие настройки являются самыми оптимальными.

opcache.memory_consumption задает использование памяти для расширения
opcache.interned_strings_buffer задает объем памяти для хранения интернированых строк, в мегабайтах
opcache.max_accelerated_files – максимальное количество скриптов в памяти
opcache.revalidate_freq — это валидация кэша в секундах, в интернете все рекомендуют значение 60, я же использую 2, но иногда рекомендуют ставить 0 (ноль), то есть постоянно проверять на изменения. К примеру в Joomla OPcache кеширует все файлы и будет отдавать кэш после сохранения файлов еще то время, которое в этой строке. То есть вы сохранили файл, но все равно в течении указанного времени будете видеть старую копию из кеша. Поэтому не жалуйтесь, что файлы не сохраняются, подождите выставленное вами время.
opcache.fast_shutdown определяет включено или выключено быстрое завершение последовательности ускоренного, кода, дает возможность использовать Zend Engine Memory Management
opcache.enable_cli включает OPcache в CLI-версии PHP.

Перезапуск web-сервера

Чтобы изменения вступили в силу нужно перезапустить вэбсервер:

Изменение скорости работы сайта после установки акселератора PHP

Блог на WordPress работал сервере с PHP 5.3 без каких-либо акселераторов. Страница генерировалась за 0,37 сек., потребление памяти составляло 37 МБ.

После установки акселератора Zend OPcache скорость генерации страницы снизилась до 0,22 сек, потребление памяти при этом составило 11 МБ.

Комментарии излишни. Использование PHP акселератора положительно сказывается на скорости работы сайта и снижает потребление памяти.

Благодарности

При написании статьи были использованы следующие источники:

Оцените статью