Memcached

MemcachedTask.cpp

image0

Узел отправляет запрос по указанному адресу и извлекает нужные ключи и значения из универсальной-распределенной системы кеширования памяти memcached.

Конфигурация узла

Входные параметры:

image1

  • host - адрес сервера с развёрнутым Memcached str.

  • port - порт сервера по которому доступен Memcached. По умолчанию 11211 int.

  • keys - значения в Memcached, которые будут проверяться. Для добавления ключа необходимо ввести его имя, после чего нажать кнопку ‘Добавить’. После добавления внизу появится красная кнопка с именем ключа, нажав на котороу, можно удалить ключ arr[str].

  • period - период проверки изменений ключей в мс. int.

Значения ключей могут быть строками или другими типами данных, представленными в виде строк.

Результаты опроса:

В DATA могут записываться следующие поля:

  • connection_status - успешность подключения и получения данных bool.

  • values - Массив объектов, каждый из которых содержит:

    • property-name - ключ str.

    • value - значение, связанное с ключом str.

  • error - сообщение об ошибке, если она возникла str. Ошибки выводятся с использованием библиотеки spdlog. Только при ошибке.

  • time - текущее время int64_t

Пример использования

Напишу сразу, чтобы всё работало нужно установить библиотеки, связанные с memcached.

  1. Для начала создадим в нашем хранилище какое-нибудь значение для проверки. Следует подключиться к нашему запущенному контейнеру.В нашем compose файле установлен статичный адрес для этого сервиса, поэтому можно просто скопировать. Будем использовать telnet: bash     telnet 172.20.0.13 11211 При успешном подключении создаем наше значение “example_value” и даём ему ключ “example_key”, 0 - флаги, 0 - время жизни (неограничено), 13 - количество зарезервированных байтов (равное количеству символов). bash     set example_key 0 0 13     example_value Получив положительный ответ, мы двигаемся дальше.

    image2

  2. Соберём схему, как на картинке снизу:

    image3

  3. Настроим узел:

    image4

  4. Готово, можем наблюдать за извлечением нашего значения из memcached.

    image5