Учебники

Memcached — Prepend Data

Команда Memcached prepend используется для добавления некоторых данных в существующий ключ. Данные хранятся до существующих данных ключа.

Синтаксис

Основной синтаксис команды Memcached prepend показан ниже:

prepend 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.

  • CLIENT_ERROR указывает на ошибку.

STORED указывает на успех.

NOT_STORED указывает, что ключ не существует на сервере Memcached.

CLIENT_ERROR указывает на ошибку.

пример

В следующем примере мы добавляем некоторые данные в ключ, который не существует. Следовательно, Memcached возвращает NOT_STORED . После этого мы устанавливаем один ключ и добавляем в него данные.

prepend tutorials 0 900 5
redis
NOT_STORED
set tutorials 0 900 9
memcached
STORED
get tutorials
VALUE tutorials 0 14
memcached
END
prepend tutorials 0 900 5
redis
STORED
get tutorials
VALUE tutorials 0 14
redismemcached
END

Prepend данных с помощью приложения Java

Чтобы добавить данные на сервер Memcached, вам необходимо использовать метод prepend 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 successful");
      System.out.println("set status:"+mcc.set("tutorialspoint", 900, "memcached").isDone());
      
      // Get value from cache
      System.out.println("Get from Cache:"+mcc.get("tutorialspoint"));
      
      // now append some data into existing key
      System.out.println("Prepend to cache:"+mcc.prepend("tutorialspoint", "redis").isDone());
      
      // get the updated key
      System.out.println("Get from Cache:"+mcc.get("tutorialspoint"));
   }
}

Выход

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