Memcached

What Memcached is
Memcached is a free, self-hosted in-memory key-value cache intended to reduce database load in dynamic web applications. It stores small pieces of arbitrary data, such as strings, objects, and results from database calls, API calls or page rendering. Clients use key-based hashing to select a server; servers operate independently, without synchronization or replication. Items can expire after a specified time, and the default eviction policy is least recently used. Memcached is a developer tool, not code acceleration software or database middleware, and its API is available for most popular languages. The project provides source downloads and installation instructions, including package prerequisites for Debian/Ubuntu and Red Hat/CentOS. Versions 1.5.13 and later support authentication and encryption via TLS when built with TLS and used with a compatible client. Optional extstore moves values to flash storage while keeping keys and the hash table in memory; it requires version 1.6.0 or newer and a restart effectively empties its flash data. The project dates to 2003.
Who it suits
Memcached suits developers seeking a self-hosted cache for dynamic application data. It is not intended as code acceleration software or database middleware.
What it does well
- Free and self-hosted, with no hosted price listed.
- Caches database, API and page-rendering results.
- Items can expire; default eviction is least recently used.
- API available for most popular languages.
- TLS authentication and encryption supported in qualifying setups.
What to know first
- Servers do not synchronize or replicate.
- Cited item-size limit is 1 MB.
- SASL does not encrypt communications and is not suitable over the internet.
- Extstore data is effectively emptied by a restart.
Limits
The documented item-size limit is 1 MB. Extstore requires Memcached 1.6.0 or newer and flash storage; restarting Memcached effectively empties its flash data.
Plans
| Plan | Billed and limits | Price |
|---|---|---|
| Memcached | Free & open source · Self-hosted software · no hosted plan or price listed | Free |
As memcached.org lists them, read 30 Sept 2026. The maker's own page has the final word.
Getting started
- Open the Memcached website and review the documentation.
- Choose a self-hosted deployment.
- Download the source tarball from the downloads page.
- Follow the installation instructions and package prerequisites for your Linux distribution.
- Use the API for your programming language to connect your application to Memcached.
- For TLS, use version 1.5.13 or later, a TLS-enabled build and a TLS-capable client.
Memcached is a free, self-hosted cache for developers reducing repeated work in dynamic applications. It is best for teams that can operate cache servers and whose applications can tolerate cache misses and refill values. Its compact, fast caching model is useful, but independent servers and a 1 MB item limit make it unsuitable when replication or large cached objects are essential.
Overview
Applications can store small values—such as strings, objects, database results, API responses, or rendered pages—and reuse them instead of fetching or computing them again. Set an expiration time for each item; when memory is needed, the default least-recently-used policy favors keeping recently accessed entries. That combination suits temporary, reusable data, not a durable store for large objects.
Clients hash keys to select a server, and each server runs independently. This avoids synchronization between cache nodes, but also means they do not replicate one another’s contents. Applications must be able to handle a missing value and repopulate it; Memcached is a poor choice if maintaining copies across servers is a requirement.
Key features
Application-level caching
Memcached is a developer tool, not code-acceleration software or database middleware. Its role is narrower: cache results from database calls, APIs, and page rendering so application code can reuse them. The maker says APIs are available for most popular languages, making it an option for teams integrating caching in common language stacks.
Performance and storage
The documentation says queries on slow machines should take well under 1 ms and high-end servers can serve millions of keys per second. Those figures describe the project’s performance expectations, not a guarantee for every deployment. The 1 MB item-size ceiling is a practical constraint: cache compact results, not large assets or records.
Optional extstore can move values to flash while retaining keys and the hash table in memory. It requires Memcached 1.6.0 or newer and flash rather than rotational storage; restarting Memcached effectively empties extstore’s flash data. It can extend value storage, but does not remove the restart-related limitation.
Security and installation
Memcached 1.5.13 and later can use authentication and encryption through TLS when built with TLS enabled and paired with a TLS-capable client. SASL provides client authentication but no encryption, and the documentation warns against using it over the internet. Installation instructions cover source builds and package prerequisites for Debian/Ubuntu and Red Hat/CentOS. For questions, the project points users to documentation, Discord, and its mailing list; Cache Forge is its route for business support.
Pricing
Memcached costs nothing (billed Free & open source; Self-hosted software). There is no hosted plan or free trial. The free plan includes the software, but you manage the infrastructure and operations yourself; organizations wanting a managed service should consider a hosted alternative instead.
Platforms
Memcached is available for Linux and macOS, with an API for application integration and a self-hosted deployment model. Its source tarball and installation guidance suit teams prepared to install and operate software on their own systems.
Who it's for
Choose Memcached if you need a no-cost cache for compact, reusable application results and can accommodate independent cache servers, expiration, and refilling misses. It is less suitable when individual items exceed 1 MB, when the cache needs synchronized or replicated contents, or when you want a hosted service rather than self-managed software.
Pros and cons
- Pro: Free and open source, with self-hosted deployment and APIs for most popular languages, so teams can integrate caching without a software subscription.
- Pro: Expiration and default LRU eviction give developers control over item lifetime and what remains in a crowded cache.
- Pro: Optional extstore can place values on flash while keeping lookup keys in memory, useful when the standard in-memory setup is not enough.
- Con: Independent servers do not synchronize or replicate, so applications must be able to recover missing entries.
- Con: The 1 MB item limit excludes large individual values, and extstore’s flash data is effectively emptied on restart.
- Con: Self-hosting leaves deployment and operation to the user; SASL alone is not encrypted and is not suitable for internet use.
Alternatives
Amazon ElastiCache is a paid option with a free tier for readers comparing Memcached with a service in the AWS ecosystem. Aiven for Valkey is worth considering for those seeking a freemium service with a free plan and trial; its free tier provides one dedicated VM with 1 CPU and 1 GB RAM, without integrations or connection pooling.
Ristretto is a free, open-source Go in-process cache, a better direction when a library embedded in a Go application fits the need. Garnet offers a free self-hosted alternative for teams that prefer a different cache software option and can manage infrastructure, updates, and operations.
Squid is free self-hosted proxy software, so consider it when proxy software rather than an application key-value cache is the intended category. Apache Traffic Server is another free option for readers comparing self-hosted caching software. cache2k is a free Apache-licensed Java library for teams that want a Java library available from Maven Central.
Accessibility Test Framework for Android is also listed as a free alternative.
Browse the broader Caching Software category to compare other options.
Verdict
Memcached is a sound choice for developers who want a free, self-managed cache for small, repeatedly used application results and can rebuild values when needed. Its appeal is the focused caching model, broad language API availability, and configurable expiration with LRU eviction. Look elsewhere if you need a hosted service, replicated cache contents, or room for items larger than 1 MB.
Verdict
Memcached is a developer-oriented cache with configurable expiration and an LRU default eviction policy. Its independent servers do not synchronize or replicate, and optional extstore has a restart-related data limitation.
Questions
Does Memcached have a free plan?
Memcached is free and open source. It is self-hosted, with no hosted plan or price listed.
Which platforms does it support?
The listed platforms are API, Linux, macOS and self-hosted deployment.
What does Memcached cache?
It stores small pieces of data, including database-call results, API-call results and page-rendering results.
Does it replicate data across servers?
No. Clients select a server using key-based hashing, and servers operate independently without synchronization or replication.
Can Memcached use TLS?
Versions 1.5.13 and later support authentication and encryption via TLS when built with TLS enabled and used with a TLS-capable client.
Who created Memcached?
Brad Fitzpatrick originally developed Memcached for LiveJournal in 2003.
Facts from Memcached's own pages
- Cached data
- It stores small chunks of arbitrary data, such as strings and objects, including results from database calls, API calls, or page rendering. · memcached.org, 30 Sept 2026
- Cluster model
- Clients use a key-based hashing algorithm to select a server, while servers operate independently without synchronization or replication. · docs.memcached.org, 30 Sept 2026
- Developer audience
- The documentation describes Memcached as a developer tool and says it is not code acceleration software or database middleware. · docs.memcached.org, 30 Sept 2026
- Expiration and eviction
- Items can expire after a specified time, and the default eviction policy is least recently used (LRU). · docs.memcached.org, 30 Sept 2026
- Flash storage
- The optional extstore feature moves values to external storage while keeping keys and the hash table in memory, and requires Memcached 1.6.0 or newer. · docs.memcached.org, 30 Sept 2026
- Flash storage limit
- Extstore requires flash storage rather than rotational media, and a Memcached restart effectively empties its flash data. · docs.memcached.org, 30 Sept 2026
- Founded
- 2003 · memcached.org, 28 Sept 2026
- Installation
- The downloads page provides a source tarball and installation instructions, including package prerequisites for Debian/Ubuntu and Red Hat/CentOS. · memcached.org, 30 Sept 2026
- Item size limit
- The use cases documentation cites a 1 MB item-size limit. · docs.memcached.org, 30 Sept 2026
- Language support
- The maker says its API is available for most popular languages. · memcached.org, 30 Sept 2026
- Origin
- Memcached was originally developed by Brad Fitzpatrick for LiveJournal in 2003. · memcached.org, 30 Sept 2026
- Performance
- The documentation says queries on slow machines should run well under 1 ms and high-end servers can serve millions of keys per second. · docs.memcached.org, 30 Sept 2026
- Purpose
- Memcached is a distributed in-memory key-value cache intended to speed up dynamic web applications by reducing database load. · memcached.org, 30 Sept 2026
- SASL security
- SASL can authenticate clients but does not encrypt communications, and the documentation says it is not suitable for use over the internet. · docs.memcached.org, 30 Sept 2026
- Support
- The project directs users to its Discord chat, documentation, and mailing list for questions, and points to Cache Forge for business support. · memcached.org, 30 Sept 2026
- TLS security
- Memcached 1.5.13 and later supports authentication and encryption via TLS when built with TLS enabled and used with a TLS-capable client. · docs.memcached.org, 30 Sept 2026
Where Memcached stands on Freedom251
- Caching Software#8 of 27