Обзор 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 поддерживает только простые пары ключ-значение. Сложные структуры данных (например, списки и множества) или операции (например, сортировка) не поддерживаются.