Учебники

Memcached — заменить данные

Команда замены 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"));
   }
}

Выход

При компиляции и выполнении программы вы увидите следующий вывод: