LINUX.ORG.RU

Memcached


3

0

Всего сообщений: 7

Memcached 1.6.0 - система кэширования данных в ОЗУ с возможностью сохранения на внешнем носителе

Memcached 1.6.0 - система кэширования данных в ОЗУ с возможностью сохранения на внешнем носителе
Группа Разработка

8 марта состоялось обновление системы кеширования данных в оперативной памяти Memcached до версии 1.6.0. Основное отличие от предыдущих релизов в том, что теперь для хранилища кэшированных данных стало возможно использовать внешнее устройство.


Memcached применяется для ускорения работы высоконагруженных сайтов или веб-приложений путём кэширования доступа к СУБД и промежуточным данным.


В новой версии при сборке по умолчанию включен параметр extstore, который и отвечает за использование внешнего носителя. Для отключения функции следует указать в ./configure параметр --disable-extstore. Однако несмотря на включенную по умолчанию сборку при запуске следует прямо указать использование этой функции.

Extstore позволяет использовать внешние Flash- или SSD-накопителя для увеличения размера кэша. Это позволит кешировать гораздо большие объемы данных, чем без использования этой функции.

Ещё одним важным нововведением стала переработка сетевого взаимодействия, которое теперь адаптировано для автоматической обработки пакетных обращений в рамках одного системного вызова. В предыдущих версий обработка каждого GET-запроса передавалась в отдельном пакете, тогда как в новой версии ответы на несколько запросов собираются в один метапакет и передаются за один раз. В результате такого нововведения была снижена нагрузка на CPU на 25%.

Также в результате этой модернизации сократилось потребление памяти на буферизацию - с 4.5 Кб до 400-500 байт на вызов, и сократилось использование функций malloc, realloc и free, что привело к меньшей фрагментации памяти. Каждый поток теперь обрабатывает свой пул буферов для чтения и записи для активных соединений. Для настройки размера этих буферов предусмотрены опции -o resp_obj_mem_limit=N и -o read_buf_mem_limt=N.

Также было объявлено о переводе в разряд «устаревших» бинарного протокола обмена с сервером. Ему на смену пришел протокол meta — текстовый вариант протокола с компактными meta-командами. В новом протоколе учтены все доступные ранее операции, использующие старые версии бинарного протокола.

>>> Официальный сайт

>>> Исходный код (лицензия BSD)

>>> Описание Extstore

>>> Описание meta-комманд

>>> Подробности

 

Zhbert
()

Релиз memcached 1.4.18

Группа Open Source

memcached — связующее программное обеспечение, реализующее сервис кэширования данных в оперативной памяти на основе парадигмы хеш-таблицы.

С помощью клиентской библиотеки (для C/C++, Ruby, Perl, PHP, Python, Java, CSharp/.Net и др.) позволяет кэшировать данные в оперативной памяти множества доступных серверов. Распределение реализуется путем сегментирования данных по значению хэша ключа по аналогии с сокетами хэш-таблицы. Клиентская библиотека, используя ключ данных, вычисляет хэш и использует его для выбора соответствующего сервера. Ситуация сбоя сервера трактуется как промах кэша, что позволяет повышать отказоустойчивость комплекса за счет наращивания количества серверов memcached и возможности производить их горячую замену.

В API memcached есть только базовые функции: выбор сервера, установка и разрыв соединения, добавление, удаление, обновление и получение объекта, а также Compare-and-swap. Для каждого объекта устанавливается время жизни, от 1 секунды до бесконечности. При исчерпании памяти более старые объекты автоматически удаляются. Для PHP также есть уже готовые библиотеки PECL для работы с memcached, которые дают дополнительную функциональность.

Список изменений в версии 1.4.18:

  • Исправления ошибок в LRU.
  • Возможность выбирать алгоритм хешированных таблиц.
  • Исправлена потеря единиц item_size_max в командной строке.
  • Добавлена команда stats conns которая отображает активные подключения.
  • Исправления в обработке ошибок.
  • Исправлены ошибки в работе get и touch.
  • Исправлена ошибка в process_get_command().

Скачать

>>> Полный список изменений

 

Cloud_Strife2020
()

Описание инфраструктуры GRAMMY.COM

Группа Интернет

Перевод презентации с конференции High Performance Drupal meetup об инфраструктуре Drupal сайта Grammy.com.

Инфраструктура реализована с помощью Apache, Varnish, Memcached, Apc, и позволяет выдерживать серьезные нагрузки, что и было проверено во время последнего вручения премии Грэмми.

>>> Инфраструктура Drupal сайта Grammy.com

 akamai, , , ,

linuxman1982
()

Архитектура Instagram

Группа Интернет

Познавательная история технического развития успешного Android и iOS приложения с серверной частью на Python и Django, приобретенного недавно Facebook за 1 миллиард долларов.

>>> Подробности

 , , , ,

m11
()

Расширяем MySQL: SQL или NoSQL - вот в чем вопрос

Группа Документация

Представлена серия статей, подробно описывающая NoSQL-возможности MySQL. В качестве примеров подробно рассмотрены два плагина для MySQL, реализующие NoSQL-функциональность: HandlerSocket и Oracle Memcached. Кроме официальных параметров и настроек, описаны некоторые недокументированные возможности этих плагинов, а также проведены их сравнительные тесты.

>>> Подробности

 handlersocket, , , newsql,

Pleshner
()

Архитектура Twitter

Группа Интернет

Подробности о технической реализации и внутренней архитектуре одного из самых быстроразвивающихся интернет-проектов.

Среди используемых технологий:

  • Apache + mod_proxy
  • Ruby on Rails + Unicorn
  • FlockDB + MySQL
  • Cassandra
  • Hadoop

>>> Подробности

 , , flockdb, , , , , , , ,

blinkov
()

Установка и настройка Django на “боевом” сервере с CentOS 5

Группа Документация

Статья об установке и настройке на выделенном сервере Python веб-фреймворка Django с mod_python для Apache, с кэшированием memcached и lighttpd для статических файлов.

>>> Подробности

 , , , , ,

kit1980
()