El 8 de marzo se llevó a cabo una actualización del sistema de almacenamiento en caché de datos en la memoria RAM. Memcached a la versión 1.6.0. La principal diferencia con respecto a las versiones anteriores es que ahora es posible utilizar un dispositivo externo para el almacenamiento de datos en caché.
Memcached se utiliza para acelerar el rendimiento de sitios web o aplicaciones web de alta carga mediante el almacenamiento en caché del acceso a la base de datos y a datos intermedios.
En la nueva versión, el parámetro extstore, que es responsable del uso de un medio externo, está habilitado por defecto durante la compilación. Para desactivar la función, debe especificarse el parámetro —disable-extstore en .\/configure. Sin embargo, a pesar de que está habilitado por defecto, al iniciar, se debe indicar explícitamente el uso de esta función.
Extstore permite utilizar Flash o SSD un dispositivo de almacenamiento para aumentar el tamaño de la caché. Esto permitirá almacenar en caché volúmenes de datos mucho mayores que sin el uso de esta función.
Otra de las importantes novedades es la reestructuración de la interacción en red, que ahora está adaptada para el procesamiento automático de peticiones en bloque en un solo llamado del sistema. En versiones anteriores, el procesamiento de cada solicitud GET se enviaba en un paquete separado, mientras que en la nueva versión las respuestas a múltiples solicitudes se agrupan en un metapaquete y se envían de una vez. Como resultado de esta novedad, la carga en la CPU se ha reducido en un 25%.
También como resultado de esta modernización, el consumo de memoria para el almacenamiento en búfer se ha reducido de 4.5 Kb a 400-500 bytes por llamada, y se ha reducido el uso de funciones malloc, realloc y free, lo que ha llevado a una menor fragmentación de memoria. Cada hilo ahora maneja su propio grupo de búferes para lectura y escritura para conexiones activas. Se han previsto opciones -o resp_obj_mem_limit=N y -o read_buf_mem_limt=N para configurar el tamaño de estos búferes.
También se ha anunciado la transición al estado de "obsoleto" del protocolo binario de intercambio con el servidor. En su lugar, se ha introducido el protocolo meta, una versión textual del protocolo con comandos meta compactos. En el nuevo protocolo se han tenido en cuenta todas las operaciones previamente disponibles que utilizaban las viejas versiones del protocolo binario.
>>> Sitio oficial
>>> Código fuente (licencia BSD)
>>> Descripción de los comandos meta
Fuente: linux.org.ru

