Вообщем еще год назад хотел перейти на php 7, но тогда не было memcached под эту версию и я забил (там что-то как-то можно было собрать, но я рукожоп и единственное что могу делать - вводить команды с гугла)
Сейчас предпринял еще одну попытку и все получилось, производительность выросла раз в 5 где-то, страницы для залогиненых открываются почти так же быстро как и для гостей с wp-supe-cache.
В чем конкретно заслуга (php 7 или opcache вместо xcache) я сказать не могу, главное все работает.
Если у кого-то как и у меня нет админа, но вы хотите проделать то же самое (конечно на свой страх и риск) то напишу как это сделал я:
Внимание! Я в части серверов и администрирования нуль, я даже до сих пор путаюсь в memcache и memcached и, вполне возможно, поставил себе что-то лишнее, так что настоятельно рекомендую обратиться к профессионалам, что бы вам все это сделали нормально. По сути главный мой посыл в конце записи с результатами, чем я хочу подстегнуть людей обновляться и делать свои сайты быстрее, а то очень-очень часто вижу нереально тормозные wordpress сайты.
У меня стоит:
- CentOS-6
- ISP manager 5
Еще год назад в настройках www домена мне добавили возможность выбора версии php, но я написал вначале почему тогда я не стал использовать php7. Сейчас проблема решилась:
- Я выбрал для своего www домена php 7.0.15 (у меня там такая)
- Затем по гайду отсюда я выполнил следующие команды в ssh клиенте:
- yum install autoconf gcc libmemcached-devel zlib-devel
/opt/php70/bin/pecl install memcached - echo extension=memcached.so >> /opt/php70/etc/php.d/memached.ini
- yum install autoconf gcc libmemcached-devel zlib-devel
- Затем в php.ini который в папке с моим доменом добавил:
- extension=memcached.so
- zend_extension=opcache.so
- Перезапустил апач: service httpd restart
- Перезапустил memcached: service memcached restart
- Поставил Memcached Redux (там всего 1 php файл object-cache.php его я поместил в /wp-content)
- Все, результаты этой работы смотрите ниже
p.s. memcached redux помещает стандартный object cache wordpress'а в ОЗУ (без него все это кешируется только на время генерации страницы) что так же дает хороший прирост производительности. Так же я его использую что бы кешировать какие-то сложные запросы и отдельные части страниц: например последние комментарии или лучшие записи в категории. Возможно я как то не правильно описал работу плагина, но именно так я понимаю его смысл и вроде все работает 🙂
Далее идет сравнение:
-----------------------------------------------
php 5.3.3 - PHP 5.3.3 + xcache + memcached
php 7 - PHP 7.0.15 + opcache + memcached
-----------------------------------------------
php 5.3.3: Главная: 17.79 Mb / 0,62477 сек / 17 запросов
php 7: Главная: 8.98 Mb / 0,11904 сек / 17 запросов
php 5.3.3:Категория: 17.72 Mb / 0,53250 сек / 21 запросов
php 7: Категория: 8.92 Mb / 0,14287 сек / 21 запросов
php 5.3.3:Запись в которой 100+ комментариев: 20.49 Mb / 1,59759 сек / 140 запросов
php 7: Запись в которой 100+ комментариев: 10.68 Mb / 0,39940 сек / 140 запросов
php 5.3.3:Запись без комментариев: 17.35 Mb / 0,50184 сек / 21 запросов
php 7: Запись без комментариев: 8.64 Mb / 0,09951 сек / 21 запросов
Я не ориентируюсь на memcached, поэтому при появлении такой возможности в панели управления я перевел этот сайт на седьмой пых. Результаты конечно впечатлили, нагрузка на сервер, объем используемой памяти упали в два раза.
Спасибо за Life Story и сравнение. Я пока не переводился на 7й пых. Хотя в панели есть такая возможность индивидуально для каждого сайта. Отклик в 0,1s конечно крут
А есть список противопоказаний? )) что может сломаться при переходе?
У меня на сайте есть пару плагинов которые мне писали под текущий пхп, какой шанс все это сломать?
Не хотелось бы править существующий код.
Заводите dev версию сайта на поддомене. На этот поддомен ставите 7й пых и тестируете функционал. Вероятность есть - т.к. 7й пхп стал строже относиться к типам данных. Ну и в других местах, т.к. обновление революционное
я пробовал, но тогда реколл ломается на основном сайте почему то. испугался и удалил его. после чего пришлось активировать все дополнения заново.
Не подпапку, а поддомен надо делать. В интернете много информации по любой панели управления - как добавить поддомен.
Вы видимо что-то не так делали. У меня на основном сайте два поддомена. На обоих WP-Recall установлен.
Ну а по 7-й версии php и плагина WP-Recall и вордпресса и дефолтных шаблонов - работает все это и уже давно. ВП шаблоны которые сейчас обновляются уже почти все поддерживают 7ю версию пхп. Потому что это рынок - не будешь поддерживать актуальные версии интерпретатора - конкуренты обойдут. Ну и по плагинам аналогично. Если плагин не держит 7-ю версию (а уже год как прошел с его релиза) - в топку такой плагин.
да я так и делал вроде. поддомен, своя база данных все подключал. даже плагинами все ссылки переназначал внутри сайта. но как то странно работает это все, не так как на основном. сори за оффтоп.
Да все что угодно: шаблон, плагины, скрипты... У меня, например, возникли траблы с шаблоном. Пока откатился 🙂
Мне из-за переезда пришлось в functions.php поправить в одном месте split() на explode() т.к. с php7 split() удалена. В остальном вроде все, была проблема с bbpress - какая-то ошибка k_sort(); но она решилась обновлением bbpress до свежей версии.
Больше пока ничего не выявил, но даже если что-то отловлю - все можно пофиксить или заменить, все таки прирост производительности измеряется не в каких-то процентах, а в разах.