Memory Partitioning and Management in Memcached

Memcached is a popular component of modern Web architectures, which allows fast response times–a fundamental performance index for measuring the Quality of Experience of end-users–for serving popular objects. In this work, we study how memory partitioning in Memcached works and how it affects system...

Full description

Saved in:
Bibliographic Details
Published in:IEEE transactions on services computing Vol. 12; no. 4; pp. 564 - 576
Main Authors: Carra, Damiano, Michiardi, Pietro
Format: Journal Article
Language:English
Published: Piscataway IEEE 01-07-2019
The Institute of Electrical and Electronics Engineers, Inc. (IEEE)
Subjects:
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Memcached is a popular component of modern Web architectures, which allows fast response times–a fundamental performance index for measuring the Quality of Experience of end-users–for serving popular objects. In this work, we study how memory partitioning in Memcached works and how it affects system performance in terms of hit ratio. We first present a cost-based memory partitioning and management mechanism for Memcached that is able to dynamically adapt to user requests and manage the memory according to both object sizes and costs. We present a comparative analysis of the vanilla memory management scheme of Memcached and our approach, using real traces from a major content delivery network operator. We show that our proposed memory management scheme achieves near-optimal performance, striking a good balance between the performance perceived by end-users and the pressure imposed on back-end servers. We then consider the problem known as “calcification”: Memcached divides the memory into different classes proportionally to the percentage of requests for objects of different sizes. Once all the available memory has been allocated, reallocation is not possible or limited. Using synthetic traces, we show the negative impact of calcification on the hit ratio with Memcached, while our scheme, thanks to its adaptivity, is able to solve the calcification problem, achieving near-optimal performance.
ISSN:1939-1374
1939-1374
2372-0204
DOI:10.1109/TSC.2016.2613048