Memcached — хранилище «ключ-значение», которое часто используют как сервис кэширования данных.

Хранилище Memcached написано на C и изначально разработано для LiveJournal. Memcached хранит данные в оперативной памяти на основе хеш-таблицы, что позволяет очень быстро записывать и получать данные. Клиентские библиотеки есть для всех популярных языков программирования — C/C++, C#, Ruby, PHP, Python, Java и других.

Для каждого объекта может быть устанавлено время жизни (от 1 секунды до бесконечности). При исчерпании памяти более старые объекты автоматически удаляются. Memcached также может использоваться в больших распределённых системах.

Альтернативным Memcached инструментом может считаться Redis — там данные также хранятся в оперативной памяти и используется TTL. Мы предпочитаем именно Redis, так как это более функциональное хранилище, позволяющее работать с большим количеством типов данных.

Redis (remote dictionary server) — NoSQL СУБД, работающая со структурами данных типа «ключ-значение».

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

Узнать больше →

Тематические технологии:

Поисковая система ElasticSearch
Колоночная СУБД Scylla
Колоночная СУБД Cassandra
PostgreSQL — объектно-реляционная СУБД
CEPH — распределенная система хранения

Cтатьи по теме:

Быстрый поиск на сайте, используя ElasticSearch или Sphinx
Sphinx и ElasticSearch — это поисковые «движки», которые обеспечивают более быстрый поиск и фильтрацию по сравнению с реляционными базами данных, а также обеспечивают возможность использования многих полезных функций поиска, например, учитывают морфологию языка, осуществляют фасеточный поиск, работают со стоп-словами, обеспечивают выборочную индексацию и позволяют производить настройку формулы определения релевантности документов.
Ускоряем работу сайта при помощи кеширования на базе Memcached
Memcached — это хранилище «ключ => значение», использование которого очень эффективно для ускорения работы сайта или веб-приложения.
Масштабирование баз данных — партиционирование, репликация и шардинг
СУБД — это очень часто «узкое место» в производительности веб-приложений. В момент, когда сервер баз данных не может справится с нагрузками, производится масштабирование. Рассмотрим основные способы увеличения производительности СУБД.
Реляционные базы данных и NoSQL-хранилища
13.03.2019  |  Статьи  —  СУБД  /  хранение данных  /  SQL  /  NoSQL  /  серверное ПО
Базы данных служат для хранения и обработки данных. Бывают реляционные (SQL) и нереляционные (NoSQL) системы управления базами данных.
Ускоряем работу сайта: используем Redis для кеширования и хранения данных
Redis — сетевое журналируемое хранилище данных типа «ключ — значение», которое обрабатывает данные в оперативной памяти и обладает механизмами снимков и журналирования для обеспечения постоянного хранения. Хранилище поддерживает работу с пятью типами данных: со строками, списками, хешами, обычными и сортируемыми множествами.
MongoDB — документо-ориентированная база данных (NoSQL)
MongoDB — это NoSQL хранилище данных, крайне удобное для хранения информации, которая не может быть нормально структурирована в рамках реляционных баз данных.
MySQL — система управления базами данных
MySQL — это реляционная система управления базами данных с открытым исходным кодом. В настоящее время эта СУБД одна из наиболее популярных в веб-приложениях — подавляющее большинство CMS использует именно MySQL (часто только её, без альтернатив), а почти все веб-фреймворки поддерживают MySQL уже на уровне базовой конфигурации (без дополнительных модулей).