Обзор Distributed Cache Service

Distribute Cache Service (DCS) — высокопроизводительный распределенный сервис кэширования данных в оперативной памяти. DCS прост в управлении и отвечает высоким требованиям к скорости чтения и записи. Это надежное, масштабируемое и готовое к использованию решение.

Сервис доступен в двух вариантах — на базе Redis и на базе Memcached. Выбор конкретного решения зависит от требований вашего проекта.

DCS for Redis

Redis — это система хранения данных в памяти, которая поддерживает различные типы структур данных, включая данные в формате «ключ-значение». Система написана на языке C.

В роли кэш-сервиса Redis может обеспечить быстрый и недорогой доступ к данным. Например, его можно использовать в случаях, когда крупному сайту электронной коммерции или приложению для стриминга видео-контента нужен быстрый доступ к большим объемам данных с простой структурой и не требующим частых запросов на соединение. Он позволяет извлекать данные из быстрого хранилища в оперативной памяти, а не из медленных хранилищ на жестких дисках.

Redis может использоваться для кэширования:

  • каталогов продуктов в электронной коммерции;

  • комментариев в прямых видео-эфирах;

  • таблиц лидеров в онлайн-играх;

  • комментариев в социальных сетях.

DCS for Memcached

Memcached — это система кэширования данных в памяти, которая поддерживает чтение и запись простых строк в формате «ключ-значение». Его часто используют для кэширования данных из БД бэкенда, чтобы снизить нагрузку на базу и ускорить работу веб-приложений.

Distributed Cache Service полностью совместим с Memcached и предусматривает резервирование и сохранение данных.

Memcached может использоваться для кэширования:

  • статических данных веб-страниц (HTML-страницы, CSS, изображения);

  • данных фронтенда, когда операций чтения гораздо больше, чем операций записи. При помощи Memcached можно уменьшить нагрузку на базу данных и увеличить производительность.

Примечание

Memcached не подойдет в случаях, когда:

  • Размер одного объекта в кэше превышает допустимый. Допустимый размер — до 1 МБ. Для файлов большего размера используйте Redis.

  • Ключ содержит больше 250 символов. Чтобы использовать Memcached в подобном случае, для ключа необходимо сгенерировать MD5-хэш и кэшировать хэш вместо самого ключа.

  • Требуется высокая надежность данных. Memcached как отдельный Open-source продукт не поддерживает репликацию, резервное копирование и миграцию данных. Memcached поддерживает сохранение данных в составе DCS for Memcached, но только при выборе типа инстанса master/standby.

  • Требуется сложная структура данных и их обработка. Memcached поддерживает только простые пары ключ-значение. Сложные структуры данных (например, списки и множества) или операции (например, сортировка) не поддерживаются.