Удалить несколько ключей из memcached - PullRequest
1 голос
/ 21 августа 2011

У меня есть две таблицы, данные из которых кэшируются с использованием memcached.Обе таблицы используют один и тот же сервер memcached.Пример:

Класс таблицы ABC:

public class ABC {
    public int abc;
    public Data data;
    public static final NAMESPACE = "ABC";

    public String getKey() {
        return NAMESPACE + abc;
    }

    public void cacheData() {
        String server = "127.0.0.1:11211";
        MemcachedClient client = new MemcachedClient(new BinaryConnectionFactory(), AddrUtil.getAddresses(servers));
        client.set(getKey(),data);
    }
}

Класс таблицы XYZ:

public class XYZ {
    public int xyz;
    public Data data;
    public static final NAMESPACE = "XYZ";

    public String getKey() {
        return NAMESPACE + xyz;
    }

    public void cacheData() {
        String server = "127.0.0.1:11211";
        MemcachedClient client = new MemcachedClient(new BinaryConnectionFactory(), AddrUtil.getAddresses(servers));
        client.set(getKey(),data);
    }
}

Теперь несколько данных кэшируются на одном сервере memcached для обеих таблиц.И я жвачку также удаляю ключи по одному.Но как мне удалить весь кеш только для одной конкретной таблицы, т.е. если я хочу удалить кеш только для таблицы XYZ.

1 Ответ

1 голос
/ 21 августа 2011

Вы не можете удалить несколько ключей из memcached за один раз.Просто сделайте это отдельно.

Если вам нужно сделать это, то вы, вероятно, неправильно используете memcached.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...