# Memcached

Published articles for Memcached.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Profiling App Engine Memcached

DevFeed: [Profiling App Engine Memcached](<https://devfeed.tech/articles/profiling-app-engine-memcached-27394.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/memcached-profiling.htm>)

Author: Khan Academy

Published: 2017-05-01T22:00:00Z

Content type: article

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [Latency](<https://devfeed.tech/topics/latency.md>), [Logging](<https://devfeed.tech/topics/logging.md>), [Data structures](<https://devfeed.tech/topics/data-structures.md>)

Tags: [engineering](<https://devfeed.tech/tags/engineering.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [latency](<https://devfeed.tech/tags/latency.md>), [logging](<https://devfeed.tech/tags/logging.md>), [memcached](<https://devfeed.tech/tags/memcached.md>), [news](<https://devfeed.tech/tags/news.md>), [patterns](<https://devfeed.tech/tags/patterns.md>), [profiling](<https://devfeed.tech/tags/profiling.md>), [tests](<https://devfeed.tech/tags/tests.md>)

### AI overview

Khan Academy engineers profile App Engine Memcached to estimate access latency and evaluate whether on-demand content fetching could support separate content trees for each language. Most requests showed 1-4 ms latency, usually below 10 ms, while a single multi-get performed similarly to a single get.

### Source excerpt

By Ben Kraft Last year, Willow wrote about how we optimized our in-memory content data to take up ... Read more

## Memcached-Backed Content Infrastructure

DevFeed: [Memcached-Backed Content Infrastructure](<https://devfeed.tech/articles/memcached-backed-content-infrastructure-27393.md>)

Original publisher: [Read original article](<http://engineering.khanacademy.org/posts/memcached-fms.htm>)

Author: Khan Academy

Published: 2017-05-15T22:00:00Z

Content type: article

Language: en

Sources: [Khan Academy](<https://devfeed.tech/sources/khan-academy.md>)

Topics: [Caching](<https://devfeed.tech/topics/caching.md>), [Back end](<https://devfeed.tech/topics/backend.md>), [data](<https://devfeed.tech/topics/data.md>), [Front end](<https://devfeed.tech/topics/frontend.md>)

Tags: [backend](<https://devfeed.tech/tags/backend.md>), [cache](<https://devfeed.tech/tags/cache.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [memcached](<https://devfeed.tech/tags/memcached.md>), [news](<https://devfeed.tech/tags/news.md>), [profiling](<https://devfeed.tech/tags/profiling.md>)

### AI overview

Khan Academy describes testing and rolling out a Memcached-backed content-serving backend. The article explains the existing content versioning and storage model, the performance limitations of fetching many individual items, and the prior approach of loading a compressed site-wide content bundle at server startup.

### Source excerpt

By Ben Kraft Last post, I wrote about how we did profiling on App Engine's Memcached service to ... Read more

## Scaling a distributed cache: Why consistent hashing is mandatory

DevFeed: [Scaling a distributed cache: Why consistent hashing is mandatory](<https://devfeed.tech/articles/scaling-a-distributed-cache-why-consistent-hashing-is-mandatory-39578.md>)

Original publisher: [Read original article](<https://ankit-rana.com/logs/26-scaling-distributed-cache-consistent-hashing/>)

Author: hello@ankit-rana.com

Published: 2026-05-17T00:00:00Z

Content type: tutorial

Language: en

Sources: [Ankit Rana | Mechanical Sympathy](<https://devfeed.tech/sources/ankit-rana-mechanical-sympathy.md>)

Topics: [consistent hashing](<https://devfeed.tech/topics/consistent-hashing.md>), [distributed-systems](<https://devfeed.tech/topics/distributed-systems.md>), [Caching](<https://devfeed.tech/topics/caching.md>), [sharding](<https://devfeed.tech/topics/sharding.md>), [scaling](<https://devfeed.tech/topics/scaling.md>), [Database](<https://devfeed.tech/topics/database.md>), [Memcached](<https://devfeed.tech/topics/memcached.md>), [Redis](<https://devfeed.tech/topics/redis.md>)

Tags: [caching](<https://devfeed.tech/tags/caching.md>), [consistent-hashing](<https://devfeed.tech/tags/consistent-hashing.md>), [database](<https://devfeed.tech/tags/database.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [distributed-cache](<https://devfeed.tech/tags/distributed-cache.md>), [distributed-systems](<https://devfeed.tech/tags/distributed-systems.md>), [memcached](<https://devfeed.tech/tags/memcached.md>), [redis](<https://devfeed.tech/tags/redis.md>), [scaling](<https://devfeed.tech/tags/scaling.md>), [sharding](<https://devfeed.tech/tags/sharding.md>)

### AI overview

The article explains why modulo-based cache sharding can remap nearly every key when a node fails, causing a large cache miss surge and database overload. It presents consistent hashing on a fixed ring as a way to limit movement to keys assigned to the failed node, and notes that virtual nodes improve distribution across physical cache nodes.

### Source excerpt

Sharding a cache with hash(key) modulo N means the denominator changes when a node dies, remapping nearly every key. Dropping from five nodes to four invalidates about 80 percent of the cache instantly and routes that miss storm straight at the primary database. Consistent hashing maps nodes and keys onto a fixed ring so only the dead node's keys move, and virtual nodes fix the uneven distribution a handful of physical nodes would otherwise produce.

## How trivago Reduced Memcached Memory Usage by 50%

DevFeed: [How trivago Reduced Memcached Memory Usage by 50%](<https://devfeed.tech/articles/how-trivago-reduced-memcached-memory-usage-by-50-27956.md>)

Original publisher: [Read original article](<https://tech.trivago.com/post/2017-12-19-memcached-optimization/>)

Author: Ivana Petrovic Software backend developer; Optimisation; Clean Architecture

Published: 2017-12-19T00:00:00Z

Content type: article

Language: en

Sources: [Trivago](<https://devfeed.tech/sources/trivago.md>)

Topics: [Caching](<https://devfeed.tech/topics/caching.md>), [Code](<https://devfeed.tech/topics/code.md>), [PHP](<https://devfeed.tech/topics/php.md>), [Logging](<https://devfeed.tech/topics/logging.md>), [Network](<https://devfeed.tech/topics/network.md>), [Database](<https://devfeed.tech/topics/database.md>)

Tags: [backend](<https://devfeed.tech/tags/backend.md>), [cache](<https://devfeed.tech/tags/cache.md>), [caching](<https://devfeed.tech/tags/caching.md>), [downtime](<https://devfeed.tech/tags/downtime.md>), [errors](<https://devfeed.tech/tags/errors.md>), [high-performance](<https://devfeed.tech/tags/high-performance.md>), [logging](<https://devfeed.tech/tags/logging.md>), [memcached](<https://devfeed.tech/tags/memcached.md>), [memory](<https://devfeed.tech/tags/memory.md>), [network](<https://devfeed.tech/tags/network.md>), [performance](<https://devfeed.tech/tags/performance.md>), [php](<https://devfeed.tech/tags/php.md>), [profiling](<https://devfeed.tech/tags/profiling.md>), [uptime](<https://devfeed.tech/tags/uptime.md>)

### AI overview

trivago describes how a Memcached cache failure caused database overload and platform downtime during a botnet-driven spike in spider traffic. The team added cache-value-size logging, used Blackfire profiling, and found that a method was caching about 10 MB of data and being called 30 times per page load.

### Source excerpt

One day, Memcached ran out of free memory. The method `get` failed and all requests went directly to the database. Of course these calls also failed under the huge load, and eventually it caused downtime for the whole trivago website. Yikes!

## Debugging commands running on memcached

DevFeed: [Debugging commands running on memcached](<https://devfeed.tech/articles/debugging-commands-running-on-memcached-27657.md>)

Original publisher: [Read original article](<https://gagor.pro/2016/07/debugging-commands-running-on-memcached/>)

Author: Tom

Published: 2016-07-13T00:00:00Z

Content type: tutorial

Language: en

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [debugging](<https://devfeed.tech/topics/debugging.md>), [Network](<https://devfeed.tech/topics/network.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [Tool](<https://devfeed.tech/topics/tool.md>), [servers](<https://devfeed.tech/topics/servers.md>)

Tags: [caching](<https://devfeed.tech/tags/caching.md>), [commands](<https://devfeed.tech/tags/commands.md>), [debugging](<https://devfeed.tech/tags/debugging.md>), [linux](<https://devfeed.tech/tags/linux.md>), [memcached](<https://devfeed.tech/tags/memcached.md>), [network](<https://devfeed.tech/tags/network.md>), [network-traffic](<https://devfeed.tech/tags/network-traffic.md>), [performance](<https://devfeed.tech/tags/performance.md>), [port](<https://devfeed.tech/tags/port.md>), [pv](<https://devfeed.tech/tags/pv.md>), [servers](<https://devfeed.tech/tags/servers.md>), [statistics](<https://devfeed.tech/tags/statistics.md>), [tcpflow](<https://devfeed.tech/tags/tcpflow.md>), [tools](<https://devfeed.tech/tags/tools.md>)

### AI overview

A practical collection of commands for debugging a running memcached server. It covers inspecting commands and network traffic, measuring transfer rates, and checking command rates using Linux tools.

### Source excerpt

Learn how to debug memcached servers by sniffing network traffic to inspect commands, measure transfer rates, and analyze command frequencies using common Linux tools.

## CMU's New Graduate Database System Internals Course

DevFeed: [CMU's New Graduate Database System Internals Course](<https://devfeed.tech/articles/cmu-s-new-graduate-database-system-internals-course-33702.md>)

Original publisher: [Read original article](<https://www.cs.cmu.edu/~pavlo/blog/2016/05/new-database-system-internals-course.html>)

Author: Andy Pavlo

Published: 2016-05-20T19:15:22Z

Content type: article

Language: en

Sources: [Andy Pavlo - Carnegie Mellon University](<https://devfeed.tech/sources/andy-pavlo-carnegie-mellon-university.md>)

Topics: [Database](<https://devfeed.tech/topics/database.md>), [Code](<https://devfeed.tech/topics/code.md>), [Development](<https://devfeed.tech/topics/development.md>), [Job](<https://devfeed.tech/topics/job.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [code](<https://devfeed.tech/tags/code.md>), [database](<https://devfeed.tech/tags/database.md>), [development](<https://devfeed.tech/tags/development.md>), [internals](<https://devfeed.tech/tags/internals.md>), [job](<https://devfeed.tech/tags/job.md>), [memcached](<https://devfeed.tech/tags/memcached.md>), [test](<https://devfeed.tech/tags/test.md>), [videos](<https://devfeed.tech/tags/videos.md>)

### AI overview

Andy Pavlo reflects on creating and teaching CMU's 15-721 Database Systems course, including its focus on database management system internals, practical coding experience, and recorded lectures. He discusses course preparation, student projects, and lessons for improving the course.

### Source excerpt

Andy reflects on his laborious effort to teach a new course on database system internals.

## Facebook's code quality problem

DevFeed: [Facebook's code quality problem](<https://devfeed.tech/articles/facebook-s-code-quality-problem-35396.md>)

Original publisher: [Read original article](<https://darkcoding.net/software/facebooks-code-quality-problem/>)

Author: Graham King

Published: 2015-10-31T23:15:51Z

Content type: opinion

Language: en

Sources: [Graham King](<https://devfeed.tech/sources/graham-king.md>)

Topics: [Code quality](<https://devfeed.tech/topics/code-quality.md>), [Objective-C](<https://devfeed.tech/topics/objective-c.md>), [iOS](<https://devfeed.tech/topics/ios.md>), [Git](<https://devfeed.tech/topics/git.md>), [Memcached](<https://devfeed.tech/topics/memcached.md>), [Redis](<https://devfeed.tech/topics/redis.md>)

Tags: [code-quality](<https://devfeed.tech/tags/code-quality.md>), [facebook](<https://devfeed.tech/tags/facebook.md>), [git](<https://devfeed.tech/tags/git.md>), [ios](<https://devfeed.tech/tags/ios.md>), [memcached](<https://devfeed.tech/tags/memcached.md>), [objective-c](<https://devfeed.tech/tags/objective-c.md>), [quality](<https://devfeed.tech/tags/quality.md>), [redis](<https://devfeed.tech/tags/redis.md>), [software](<https://devfeed.tech/tags/software.md>)

### AI overview

The article argues that Facebook's software quality problems are reflected in the complexity of its iOS codebase and in the performance tradeoffs described in its database-restart research. It uses examples involving Objective-C classes, large numbers of contributors, and slow data reloading to criticize the effects of scaling without sufficient architectural discipline.

### Source excerpt

"Move fast and break things: A cautionary tale from Facebook's code quality woes."

## tCache - Scalable data-aware Java Caching

DevFeed: [tCache - Scalable data-aware Java Caching](<https://devfeed.tech/articles/tcache-scalable-data-aware-java-caching-27934.md>)

Original publisher: [Read original article](<https://tech.trivago.com/post/2015-10-15-tcache/>)

Author: Christian Esken

Published: 2015-10-15T00:00:00Z

Content type: article

Language: en

Sources: [Trivago](<https://devfeed.tech/sources/trivago.md>)

Topics: [Caching](<https://devfeed.tech/topics/caching.md>), [Java](<https://devfeed.tech/topics/java.md>), [data](<https://devfeed.tech/topics/data.md>), [Redis](<https://devfeed.tech/topics/redis.md>)

Tags: [backend](<https://devfeed.tech/tags/backend.md>), [caching](<https://devfeed.tech/tags/caching.md>), [consistency](<https://devfeed.tech/tags/consistency.md>), [data](<https://devfeed.tech/tags/data.md>), [java](<https://devfeed.tech/tags/java.md>), [lock-free](<https://devfeed.tech/tags/lock-free.md>), [locking](<https://devfeed.tech/tags/locking.md>), [memcached](<https://devfeed.tech/tags/memcached.md>), [network](<https://devfeed.tech/tags/network.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [performance](<https://devfeed.tech/tags/performance.md>), [redis](<https://devfeed.tech/tags/redis.md>)

### AI overview

This article presents tCache, a local in-process cache for the JVM that can complement shared caches such as Redis and Memcached. It describes data-aware and near-lock-free eviction, configurable expiration and invalidation, cache statistics, load spreading, and support for high-throughput operations.

### Source excerpt

Caching data is an essential part in many high-load scenarios. A local 1st-level cache can augment a shared 2nd-level cache like Redis and Memcached to further boost performance. An in-process cache involves no network overhead, so the cache speed is only limited by local resources like CPU, memory transfer speed and locking.

## Checking memcached status

DevFeed: [Checking memcached status](<https://devfeed.tech/articles/checking-memcached-status-27613.md>)

Original publisher: [Read original article](<https://gagor.pro/2014/03/checking-memcached-status/>)

Author: Tom

Published: 2014-03-21T00:00:00Z

Content type: tutorial

Language: en

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [Server](<https://devfeed.tech/topics/server.md>)

Tags: [linux](<https://devfeed.tech/tags/linux.md>), [memcached](<https://devfeed.tech/tags/memcached.md>), [memory](<https://devfeed.tech/tags/memory.md>), [server](<https://devfeed.tech/tags/server.md>), [stat](<https://devfeed.tech/tags/stat.md>), [threads](<https://devfeed.tech/tags/threads.md>)

### AI overview

A short tutorial shows how to check a memcached server's status and memory usage with the netcat command. It highlights the STAT bytes value while also displaying other server statistics.

### Source excerpt

I need to check memory usage of memcached server so I used: echo stats | nc 127.0.0.1 11211 STAT pid 2743 STAT uptime 263 STAT time 1395438951 STAT version 1.4.13 STAT pointer_size 64 STAT rusage_user 0.482926 STAT rusage_system 2.675593 STAT curr_items 8667 STAT total_items 10742 STAT bytes 23802513 STAT curr_connections 296 STAT total_connections 399 STAT connection_structures 297 STAT cmd_flush 0 STAT cmd_get 52578 STAT cmd_set 10792 STAT get_hits 28692 STAT get_misses 23886 STAT evictions 0 STAT bytes_read 35984361 STAT bytes_written 192647437 STAT limit_maxbytes 536870912 STAT threads 2 STAT accepting_conns 1 STAT listen_disabled_num 0 STAT replication MASTER STAT repcached_qi_free 8189 STAT repcached_wdata 0 STAT repcached_wsize 1026048 END For me, bytes value was important but you could find more about all statistics here external link .

## How to sleep a million years

DevFeed: [How to sleep a million years](<https://devfeed.tech/articles/how-to-sleep-a-million-years-38926.md>)

Original publisher: [Read original article](<https://idea.popcount.org/2013-07-19-how-to-sleep-a-million-years>)

Author: Marek

Published: 2013-07-18T22:00:00Z

Content type: tutorial

Language: en

Sources: [Marek Majkowski](<https://devfeed.tech/sources/marek-majkowski.md>)

Topics: [Code](<https://devfeed.tech/topics/code.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Scripting, bash](<https://devfeed.tech/topics/scripting-bash.md>), [Operating system](<https://devfeed.tech/topics/operating-system.md>), [Processes](<https://devfeed.tech/topics/processes.md>), [Caching](<https://devfeed.tech/topics/caching.md>), [Memcached](<https://devfeed.tech/topics/memcached.md>), [Concurrency](<https://devfeed.tech/topics/concurrency.md>)

Tags: [bash](<https://devfeed.tech/tags/bash.md>), [caching](<https://devfeed.tech/tags/caching.md>), [code](<https://devfeed.tech/tags/code.md>), [command-line](<https://devfeed.tech/tags/command-line.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [memcached](<https://devfeed.tech/tags/memcached.md>), [processes](<https://devfeed.tech/tags/processes.md>), [server](<https://devfeed.tech/tags/server.md>), [timeout](<https://devfeed.tech/tags/timeout.md>)

### AI overview

This tutorial demonstrates fluxcapacitor, an environment that changes a program's view of elapsed time. It uses examples including sleeping for very long durations, accelerating sleep sort, and testing Memcached expiration with separate processes.

### Source excerpt

How to sleep million years Let me assure you, the "fluxcapacitor" project is very interesting. Unfortunately, I find it very difficult to describe what it does. For this project I completely fail the elevator pitch. I won't attempt to describe it, instead I'll try present it in action.

## In-memory key-value store in C, Go and Python

DevFeed: [In-memory key-value store in C, Go and Python](<https://devfeed.tech/articles/in-memory-key-value-store-in-c-go-and-python-35419.md>)

Original publisher: [Read original article](<https://darkcoding.net/software/in-memory-key-value-store-in-c-go-and-python/>)

Author: Graham King

Published: 2012-03-13T05:00:08Z

Content type: tutorial

Language: en

Sources: [Graham King](<https://devfeed.tech/sources/graham-king.md>)

Topics: [C](<https://devfeed.tech/topics/c.md>), [Go Language](<https://devfeed.tech/topics/go-language.md>), [Memcached](<https://devfeed.tech/topics/memcached.md>), [Python](<https://devfeed.tech/topics/python.md>), [networking](<https://devfeed.tech/topics/networking.md>), [POSIX](<https://devfeed.tech/topics/posix.md>)

Tags: [c](<https://devfeed.tech/tags/c.md>), [epoll](<https://devfeed.tech/tags/epoll.md>), [go](<https://devfeed.tech/tags/go.md>), [memcached](<https://devfeed.tech/tags/memcached.md>), [networking](<https://devfeed.tech/tags/networking.md>), [posix](<https://devfeed.tech/tags/posix.md>), [python](<https://devfeed.tech/tags/python.md>), [software](<https://devfeed.tech/tags/software.md>), [tcp](<https://devfeed.tech/tags/tcp.md>)

### AI overview

The article describes implementing an in-memory key-value store in C, Go, and Python using enough of the memcached protocol to test with a client. It compares the implementations and explains networking details including TCP_NODELAY, Nagle's algorithm, delayed acknowledgments, non-blocking sockets, epoll, and futexes.

### Source excerpt

"Coder's paternity leave turns into polyglot key-value store adventure"

## Klastrowanie sesji PHP z memcached

DevFeed: [Klastrowanie sesji PHP z memcached](<https://devfeed.tech/articles/klastrowanie-sesji-php-z-memcached-27485.md>)

Original publisher: [Read original article](<https://gagor.pro/2011/08/klastrowanie-sesji-php-z-memcached/>)

Author: Tom

Published: 2011-08-27T00:00:00Z

Content type: tutorial

Language: pl

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [PHP](<https://devfeed.tech/topics/php.md>), [.NET 11](<https://devfeed.tech/topics/net-11.md>)

Tags: [apache](<https://devfeed.tech/tags/apache.md>), [debian](<https://devfeed.tech/tags/debian.md>), [memcached](<https://devfeed.tech/tags/memcached.md>), [php](<https://devfeed.tech/tags/php.md>)

### AI overview

A Polish tutorial explains how to share PHP sessions between multiple Apache servers by replacing file-based session storage with memcached. It describes using two memcached servers for failover and outlines the PHP configuration changes required.

### Source excerpt

Klastrowanie to może zbyt dumnie powiedziane. Rozwiązanie to wyszukałem gdy chcąc skonfigurować dwa serwery apache do współpracy na rzecz jednego serwisu okazało się, że sejse trzymane są tylko przez jeden serwer a drugi nic o nich nie wie. To oczywiście nie pozwalało na prawidłowe działanie jakiegokolwiek serwisu korzystającego z sesji. Pomysł jest taki, że zastępujemy domyśny mechanizm przechowywania sesji w plikach na dysku mechanizmem memcache. Ponieważ memcached działa jako usługa sieciowa, różne serwery mogą się odwoływać do puli memcached i odczytywać zapisane w niej dane. W przypadku sesji - nie jest ważne, kto ją utworzył - bo po jej wysłaniu do puli memcached staje się dostępna dla wszystkich klientów php z niej korzystających.

## Memcached: List all keys

DevFeed: [Memcached: List all keys](<https://devfeed.tech/articles/memcached-list-all-keys-35434.md>)

Original publisher: [Read original article](<https://darkcoding.net/software/memcached-list-all-keys/>)

Author: Graham King

Published: 2009-10-20T16:50:30Z

Content type: tutorial

Language: en

Sources: [Graham King](<https://devfeed.tech/sources/graham-king.md>)

Topics: [Memcached](<https://devfeed.tech/topics/memcached.md>), [Cache](<https://devfeed.tech/topics/cache.md>), [Development](<https://devfeed.tech/topics/development.md>)

Tags: [developer](<https://devfeed.tech/tags/developer.md>), [guide](<https://devfeed.tech/tags/guide.md>), [list](<https://devfeed.tech/tags/list.md>), [max](<https://devfeed.tech/tags/max.md>), [memcached](<https://devfeed.tech/tags/memcached.md>), [request](<https://devfeed.tech/tags/request.md>), [server](<https://devfeed.tech/tags/server.md>), [software](<https://devfeed.tech/tags/software.md>)

### AI overview

A development-oriented tutorial explains how to inspect some keys stored in a Memcached instance by connecting to the server, obtaining slab IDs, and requesting limited cache dumps. It notes that Memcached generally cannot list every stored key, though inspecting a subset may be sufficient during development.

### Source excerpt

"Unlocking Memcached's Hidden Treasures: A Developer's Guide"