Memcached и WP Super Cache — мечта любого блога. Memcached wordpress


Memcached и WP Super Cache — мечта любого блога

Очередной админский вечер окончился победой над сервером. В прошлый вечер читатели моего блога могли наблюдать сбои в работе блога и других проектов. Это было связано с очередными техническими работами на сервере. Суть работ сводилась к следующему: перестроить все проекты на WordPress на работу с кешированием. В частности, раньше мною был написан мануал о том, как связать WordPress и Memcached сервер для кеширования части запросов. Тогда мои деяния увенчались успехом. Удалось снизить количество запросов с 24х до трех, остальные же запросы кешировались. Скорость работы блога возросла и он стал меньше «падать» при высоком онлайне.

Попытка навязать мемкеш-серверу еще один блог оказалась провальной. При подключении к серверу memcached очередного WordPress блога уже работающий с кешированием блог переставал работать. Час безуспешных попыток дал понять админскому мозгу, что по такой схеме два и более wp-проекта с одним мемкеш-сервером работать не будут.

Спустя полчаса было найдено оптимальное решение, которое позволило подключить 4 блога к мемкешед-серверу.

Существует плагин WP memcached manager, позволяющий не вписывать порт сервера в конфиг wp, а делать это через админку. Вроде бы получается одно и то же, но несколько блогов работают с одним сервером мемкеша. Чтобы настроить связку Wodpress и memcached следует сделать все то же самое, что и в прошлой статье до пункта, где требуется вписать в конфиг адрес локалхоста.

После того, как вы установите memcached на сервер, зальете плагины для работы с мемкешем можете активировать WP memcached manager и вписывать туда сервер. После этого запросы начнут кешироваться. На обычном хостинге мемкешед-сервера нет. Для этих целей нужно купить как минимум VPS сервер.

Но для меня этого было мало. Генерация страниц по-прежнему оставалась высокой. Помнится, пару лет назад я пробовал в работе WP Super Cache. Тогда мне этот плагин показался громоздкой бесполезной машиной. Вчера я понял, что мое мнение было ошибочным. Текущая версия плагина 1.0, руссифицирована, отлично кеширует файлы, представляя их пользователю в виде html файлов. Таким образом, нагрузка на сервер снижается, так как страницы не генерируются из кода, а выдаются уже в кешированном виде. В качестве настроек рекомендую поставить обязательным галочки при создании коммента и галочку , где указано некеширование для «известных» (залогиненных) пользователей.С WP Super Cache генерация снизилась 3 раза, а средняя скорость загрузки страниц возросла более чем в 2-4 раза (с 20-30 кб/с до 70-80 кб/с).Собственно говоря, статистика загрузки четырех проектов показана ниже. Первые два блога подключены к WP Super Cache (картинка кликабельна):Скорость загрузки сайтов

Скорость загрузки сайтовВ итоге, четыре часа работы над сервером не прошли даром. Проекты снизили нагрузку на сервер в несколько раз.

rxnblog.ru

Оптимизация Wordpress — работа с кешированием

Когда работа с оптимизацией памяти закончена, пора приступать к кешированию. Причем, работа в этой сфере разделяется на 2 этапа: уменьшение количества запросов и кеширование страниц блога.В работе с WordPress я использую 2 плагина. Первый — WP Super Cache позволяет создать кеш страниц блога на сервере и отдавать их как html странички. Скорость загрузки кешированных страниц поднимается в 3-4 раза. О работе с WP Super Cache я уже писал в этой статье. Там же и даны советы по настройке плагина, а также тестовые замеры. Текущая версия плагина 1.1.

Второй плагин для себя я открыл совсем недавно. Раньше я пользовался более древней его версией, затем пересел на Memcached Manager. Сейчас же основу кеширования составляет плагин SJ Object Cache версии 1.2 с поддержкой Memcache и Memcached. Он позволяет кешировать с помошью нескольких на выбор вариантов. Для меня оптимальным является кеширование с помощью Memcached. Устанавливаете плагин, активируете, сохраняете настройки.

 

Выбор кешаВыбор кеша

Затем переходите во вкладку Memcache и вписываете адрес сервера 127.0.0.1. Главное, чтобы настройки сохранились, нужно установить права 777 или 755 на папку с плагином.

Настройка memcached на WordPressНастройка memcached на WordPress

Но для такого рода кеширования хостинг должен иметь Memcached-сервер. На VPS|VDS установить memcached можно по этой схеме. Если же у вас нет Memcache на хостинге, попробуйте третий вариант кеширования. Он также дает неплохие результаты.

Что же дает это кеширование? По сути, количество запросов не уменьшается, а кешируется. То есть при каждом обращении пользователя к странице к БД идут 20-30 запросов. Они обрабатываются и отдаются пользователю. При кешировании часть запросов в кешированном состоянии хранится в оперативной памяти и отдается оттуда уже в обработанном виде. Таким образом, снижается нагрузка на сервер.

В итоге подобная оптимизация и продвижение сайтов на WordPress привела к тому, что генерация снизилась в 2 раза, количество запросов на главной в 10 раз, а скорость загрузки страниц возросла более чем в 3-4 раза.

rxnblog.ru

Wordpress и memcache 2

[audio:9d179c38ffe0.mp3]Первая часть тут была.Написал я тогда как сделать, а сам так и не сделал и результатов не посмотрел, насколько сильно помогает memcache для вп.Кратко, для чего нужен memcache: при определенной нагрузке, вордпресс начинает генерить очень много запросов и завешивает базу. Меня когда одни редиски досили, первое, что отвалилось так это база. Не могу установить соединение с базой данных — частенько выдает вордпресс. Memcached кеширует запросы к базе, тем самым снимая ее с БД (и перекладывая на оперативку 🙂 )Также я изначально отказался от плагинов, например batcache. Как установить плагин итак все знают.Вобщем, практическое занятие началось.Нужно установить сам memcached на сервер. Затем пересобрать php с ним. Затем подключить вордпресс.Ставим., у меня центос, поэтому команды по нему.

yum install memcached

запускаем

memcached -m 512 -u nobody -vv

Это была серверная часть. Теперь готовим пыхыпе. Чтобы пересобрать по быстрому php, нужен девелоперский пакет.

yum install php-devel

Пересобираем пых

phpize && ./configure --enable-memcache && make

Правим конфиг php

mcedit /etc/php.ini extension=memcache.so

Делаем ребутатеньки апачу, в папке с memcache лежит файл теста, можно проверить работу демона заодно.

/etc/init.d/httpd restart php example.php

Пускаем демона, если не был пущен.

memcached -d -m 2048 -l 127.0.0.1 -p 11211 -u nobody

Теперь сам вордпресс.Тут все просто.Качаем пару файловhttp://plugins.trac.wordpress.org/browser/memcached/branches/1.0/object-cache.php?format=txthttp://plugins.trac.wordpress.org/browser/memcached/branches/1.0/memcached-client.php?format=txtКладем их в /wp-content.В файл wp-config.php добавляем:

$memcached_servers="127.0.0.1:11211

Теперь проверка.Пустая инсталляция вп 2.8.3, три раза подряд:

<!-- 18 queries. 0.985 seconds. --> <!-- 18 queries. 1.340 seconds. --> <!-- 18 queries. 3.619 seconds. -->

Включаем memcahe:

<!-- 3 queries. 26.650 seconds. --> <!-- 3 queries. 1.036 seconds. --> <!-- 3 queries. 0.998 seconds. -->

Скачки по времени потому, что тест проводился на боевом серваке с саттелитами, а их в это время пожирал бот яху, он любит по 100 потоков лазить.Разница довольно неплохая, число запросов сильно уменьшилось. Время генерации существенно не изменилось. Memcache это способ решения проблем с базой, не ускорения загрузки сайта.

0.00 avg. rating (0% score) - 0 votes

alexvolkov.ru

WP Memcached Manager | WordPress.org

If you use Memcached, then sometimes it’s handy to be able to administer your Memcached instances from inside WordPress.

With this plugin you can check your Memcached server is running, some basic usage stats and initiate cache flushes. In future version you’ll be able to do more useful Memcached admin things.

1: You need the PECL Memcache extension / client installed. Please see: http://www.php.net/manual/en/memcache.installation.php

2: Install the WP Memcached Manager WordPress plugin and activate it.

3: Navigate to the Memcached menu in WordPress, and use the Edit Servers screen to define your Memcached servers.

4: Then use the main Memcached menu to manage each instance.

Installation Instructions

1: You need the PECL Memcache extension / client installed. Please see: http://www.php.net/manual/en/memcache.installation.php

2: Install the WP Memcached Manager WordPress plugin and activate it.

3: Navigate to the Memcached menu in WordPress, and use the Edit Servers screen to define your Memcached servers.

4: Then use the main Memcached menu to manage each instance.

Is this safe to use in production?

Should be, but be very careful. Memcached data is obviously volatile and you should never expect it to survive most any server problems, however, besides clobbering data you could perform tasks on Memcached instances using this tool which block regular Memcached cache activity, or agressively claim RAM like it’s the end of days.

What exactly does the View Data tool do?

Shows you a very, very rudimentary listing of 100 keys and values from your Memcached instance. In future versions it will be more useful.

Should I use the View Data tool on a large Memcached instance?

Negative. No. You don’t want to be doing a slab dump on any significant set of data. Please don’t.

Does this add stuff to my cache?

Yes, it sets some testing keys. As of right now a PECL client bug prevents nice orderly deletes of these test keys, so they are not deleted. But this will change.

«WP Memcached Manager» — проект с открытым исходным кодом. В развитие плагина внесли свой вклад следующие участники:

Участники

ru.wordpress.org


Смотрите также

Prostoy-Site | Все права защищены © 2018 | Карта сайта