Memcached

Memcached (произносится по-разному mem-cash-dee или mem-cashed) - это распределенная система кеширования памяти общего назначения. Она часто используется для ускорения динамических сайтов, управляемых базой данных, путем кэширования данных и объектов в оперативной памяти, чтобы уменьшить количество раз, когда внешний источник данных (например, база данных или API) должен быть прочитан. Memcached - это бесплатное программное обеспечение с открытым исходным кодом, лицензированное по пересмотренной лицензии BSD. Memcached работает в Unix-подобных операционных системах (по крайней мере, Linux и OS X) и в Microsoft Windows. Memcached зависит от библиотеки libevent.

API Memcached предоставляют очень большую хэш-таблицу, распределенную по нескольким машинам. Когда таблица заполнена, последующие вставки приводят к удалению старых данных в порядке наименьшего количества использованных (LRU). Приложения, использующие Memcached, обычно накладывают запросы и добавления в оперативную память, прежде чем использовать более медленное резервное хранилище, такое как база данных.

Memcached не имеет внутреннего механизма для отслеживания промахов, которые могут произойти. Однако некоторые сторонние утилиты предоставляют эту функциональность.

Memcached был впервые разработан Брэдом Фитцпатриком для его сайта LiveJournal 22 мая 2003 года. Первоначально он был написан на Perl, затем переписан на Си Анатолием Воробей, а затем нанят LiveJournal. Memcached теперь используется во многих других системах, включая YouTube, Reddit, Facebook, Pinterest, Twitter, Wikipedia, Method Studios. Google App Engine, Microsoft Azure, IBM Bluemix и Amazon Web Services также предлагают сервис Memcached через API.

Комментарии

Популярные сообщения из этого блога

Язык поисковых запросов в Graylog

Нормальные формы, пример нормализации в базе данных

Хэш-таблица: разрешение коллизий