Я ищу простой ответ на простой вопрос, который сложно найти.
Поддерживает ли memcache очистку подмножества ключей? Или вызов очистки всегда очищает весь кеш?
В частности, поддерживает ли это клиент PHP memcached («d» в конце)? (по сравнению с клиентом memcache PHP, которого нет) Требуется ли поддержка этого на сервере?
У нас есть мультитенантная служба, которая использует один сервер кэша памяти для всех клиентов. Для этого мы добавляем в ключи префикса уникального идентификатора клиента. Мы хотели бы иметь возможность очищать ключи для каждого клиента, но похоже, что очистка кэша памяти поддерживает только очистку всего кеша.
Чтобы формализовать это в ответ, memcached
не предлагает такой функции, о которой я знаю, и вам придется сделать это самостоятельно. См. Образец из memcached
код Google страница.
Кстати, Drupal, CMS на основе PHP, имеет memcached
модуль, который позволяет выполнять очистку префиксов и кеша. Мы успешно использовали его для очистки кеша по префиксу в нашей настройке. Хотя я в последнее время не проверял код этого модуля, это будет стоит посмотреть (см. версию 7.x-1.0). И, возможно, вы найдете это memcached
QA мой на Drupal SE: эффективное использование Memcache с Drupal 7 Multisite тоже полезно.