Команда замены Memcached используется для замены значения существующего ключа. Если ключ не существует, он выдает сообщение NOT_STORED.
Синтаксис
Основной синтаксис команды замены Memcached показан ниже:
replace key flags exptime bytes [noreply] value
Ключевые слова в синтаксисе, как описано ниже —
-
ключ — это имя ключа, по которому данные сохраняются и извлекаются из Memcached.
-
флаги — это 32-разрядное целое число без знака, которое сервер хранит вместе с данными, предоставленными пользователем, и возвращает вместе с данными при получении элемента.
-
exptime — время истечения в секундах. 0 означает отсутствие задержки. Если время экспозиции превышает 30 дней, Memcached использует его как метку времени UNIX для истечения срока действия.
-
байты — это количество байтов в блоке данных, которое необходимо сохранить. Это длина данных, которые должны храниться в Memcached.
-
noreply (необязательно) — это параметр, который информирует сервер не отправлять ответ.
-
значение — это данные, которые должны быть сохранены. Данные должны быть переданы в новой строке после выполнения команды с вышеуказанными параметрами.
ключ — это имя ключа, по которому данные сохраняются и извлекаются из Memcached.
флаги — это 32-разрядное целое число без знака, которое сервер хранит вместе с данными, предоставленными пользователем, и возвращает вместе с данными при получении элемента.
exptime — время истечения в секундах. 0 означает отсутствие задержки. Если время экспозиции превышает 30 дней, Memcached использует его как метку времени UNIX для истечения срока действия.
байты — это количество байтов в блоке данных, которое необходимо сохранить. Это длина данных, которые должны храниться в Memcached.
noreply (необязательно) — это параметр, который информирует сервер не отправлять ответ.
значение — это данные, которые должны быть сохранены. Данные должны быть переданы в новой строке после выполнения команды с вышеуказанными параметрами.
Выход
Вывод команды такой, как показано ниже —
STORED
-
STORED указывает на успех.
-
NOT_STORED указывает, что данные не сохраняются в Memcached.
STORED указывает на успех.
NOT_STORED указывает, что данные не сохраняются в Memcached.
пример
В следующем примере мы используем «ключ» в качестве ключа и сохраняем в нем memcached со сроком действия 900 секунд. После этого тот же ключ заменяется значением ‘redis’.
add key 0 900 9 memcached STORED get key VALUE key 0 9 memcached END replace key 0 900 5 redis get key VALUE key 0 5 redis END
Заменить данные с помощью приложения Java
Чтобы заменить данные на сервере Memcached, вам нужно использовать метод замены Memcached.
пример
import net.spy.memcached.MemcachedClient; public class MemcachedJava { public static void main(String[] args) { // Connecting to Memcached server on localhost MemcachedClient mcc = new MemcachedClient(new InetSocketAddress("127.0.0.1", 11211)); System.out.println("Connection to server sucessfully"); System.out.println("set status:"+mcc.set("tutorialspoint", 900, "memcached").done); // Get value from cache System.out.println("Get from Cache:"+mcc.get("tutorialspoint")); // now replace the existing data System.out.println("Replace cache:"+mcc.replace("tutorialspoint", 900, "redis").done); // get the updated data System.out.println("Get from Cache:"+mcc.get("tutorialspoint")); } }
Выход
При компиляции и выполнении программы вы увидите следующий вывод: