Релиз Memcached 1.5.4 с поддержкой кэша на SSD-накопителях

21 декабря 2017 года

Подготовлен релиз системы кеширования данных в оперативной памяти Memcached 1.5.4, оперирующей данными в формате ключ/значение и отличающейся простотой использования. Memcached обычно применяется как легковесное решение для ускорения работы высоконагруженных сайтов путём кэширование доступа к СУБД и промежуточным данным. Код поставляется под лицензией BSD.

Новая версия интересна добавлением прослойки для работы с внешними хранилищами, позволяющая использовать SSD/Flash-накопители для расширения размера кэша. Как и при использовании оперативной памяти, хранилище на Flash не является постоянным и сбрасывается при перезапуске. В качестве области применения нового режима называется обеспечения эффективного кэширования данных большого размера.

Суть нового метода заключается в том, что ключи и метаданные, как и раньше, хранится только в оперативной памяти. Если связанные с ключом данные небольшого размера, то Memcached работает как обычно, держит данные в памяти и не обращается к внешнему хранилищу. Но если данные больше определённого значения, они сохраняются во внешнее хранилище, а в ОЗУ остаётся только указатель. Если свободной памяти много, то наиболее востребованные данные дополнительно могут полностью находиться в кэше в оперативной памяти (например можно указать, чтобы на Flash сбрасывались только объекты больше 1024 байт, к которым не было обращений 3600 секунд").

Основной упор делается на обеспечении максимальной производительности и минимальной нагрузки на CPU, в ущерб эффективности хранения и потери данных после перезапуска. В лучшем случае из-за фрагментации эффективность использования выделенного постоянного хранилища составляет 80-90%. Для снижения фрагментации применяется технология уплотнения страниц памяти в хранилище. Для продления ресурса Flash-накопителей данные буферизируются и сбрасываются в хранилище последовательно. Для обработки ввода/вывода используется пул потоков, сбрасывающих данные в асинхронном режиме.

Возможность пока остаётся экспериментальной, но отмечается как достаточно стабильная и хорошо протестированная. Например, новый режим уже используется компанией Netflix в своей основной инфраструктуре. Для включения внешнего хранилища следует использовать опцию "-o ext_path=/mnt/somefile,ext_page_count=100" (где /mnt/somefile файл с БД, а 100 - число страниц хранения по 64 Мб каждая), предварительно собрав memcached с указанием "./configure --enable-extstore".

Источники

править


 
 
Creative Commons
Эта статья содержит материалы из статьи «Релиз Memcached 1.5.4 с поддержкой кэша на SSD-накопителях», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.