Описание
Memcached Object Cache обеспечивает постоянный бэкэнд для кэша объектов WordPress. Требуется сервер memcached и расширение PECL memcache.
Установка
-
Установите memcached хотя бы на одном сервере. Обратите внимание на информацию о подключении. По умолчанию используется
127.0.0.1:11211
. -
Установите расширение PECL memcache.
-
Скопируйте файл object-cache.php в wp-content
-
Добавьте константу
WP_CACHE_KEY_SALT
в файлwp-config.php
:php
define( 'WP_CACHE_KEY_SALT', '...длинная случайная строка...' );
Это позволяет предотвратить загрязнение кэша, когда несколько установок WordPress используют один и тот же сервер Memcached. Значение должно быть уникальным для каждой установки WordPress.
Часто задаваемые вопросы
-
Как вручную указать сервер(ы) memcached?
-
Добавьте в файл wp-config.php выше что-то похожее на следующее
/* Это все, хватит редактировать! Счастливого блоггинга. */
:$memcached_servers = array( 'default' => array( '10.10.10.20:11211', '10.10.10.30:11211' ) );
Ключами массива верхнего уровня являются группы кэша, где ‘default’ соответствует любой группе кэша, которая не определена явно. Это позволяет указывать серверы memcached, которые работают только с определенными группами кэша. Наиболее часто используется только указание ‘default’.
Возможные группы кэша:
{$taxonomy}_relationships {$meta_type}_meta {$taxonomy}_relationships blog-details blog-id-cache blog-lookup bookmark calendar category comment counts general global-posts options plugins post_ancestors post_meta posts rss site-lookup site-options site-transient terms themes timeinfo transient user_meta useremail userlogins usermeta users userslugs widget
Отзывы
Участники и разработчики
«Memcached Object Cache» — проект с открытым исходным кодом. В развитие плагина внесли свой вклад следующие участники:
Участники«Memcached Object Cache» переведён на 5 языков. Благодарим переводчиков за их работу.
Перевести «Memcached Object Cache» на ваш язык.
Заинтересованы в разработке?
Посмотрите код, проверьте SVN репозиторий, или подпишитесь на журнал разработки по RSS.
Журнал изменений
4.0.0
- Добавить вытесняющий фильтр pre_wp_cache_get
- Add flush_number replication to prevent accidental flush due to flush_number eviction, server rotation, etc.
3.2.2
- Убрать фильтр и основывать снятие ключей на наличии
key_salt
.
3.2.1
- Исправлена ошибка, из-за которой записи slow-ops имели одну и ту же клавишу, поэтому переключение не работало
3.2.0
- Улучшена функция stats(). Теперь показывает групповые/индивидуальные вызовы кэша с указанием размера полезной нагрузки и таймингов.
- Теперь требуется PHP 5.6.20
- Fix get_multi to show per group calls
- Добавлен фильтр (memcached_strip_keys) для обхода снятия ключей с memcached
- Специальная группа для медленных операций ( > 5 мс) с обратной трассировкой
3.1.0
- Add wp_cache_get_multi
- Add support for the $found parameter
- Set a variable for $max_expiration to 30 days
- Изменения стиля кода
- Различная окраска для неизвестной группы статистики
- Сохранение хоста/порта при отказе (failure_callback)
- Подсчет статистики по умолчанию
3.0.2
- Улучшенный вывод HTML
3.0.1
- Исправлена ошибка генерации ключа в функции switch_to_blog()
3.0.0
- Очистка кэша сайта путем ротации ключей
- Очистка глобального кэша при очистке основного сайта
2.0.6
- Очистка локального кэша с помощью функции wp_cache_flush().
2.0.5
- Исправление отсутствующего глобала (переменной) в switch_to_blog
2.0.4
- Удаление устаревшего конструктора
2.0.3
- Поддержка сокетов unix
2.0.2
- Разрыв ссылок путем клонирования объектов
- Поддерживать локальный кэш в синхронизации с memcached при использовании incr и decr
- Обработка ограниченных сред, в которых функция is_multisite() не определена
- Исправлена установка и получение 0
- Теперь требуется PHP 5.2.4
- Для гарантии уникальности ключей используйте константу WP_CACHE_KEY_SALT, если она доступна