LSMCD: A Persistent, Highly Scalable and Available Memcached Replacement
Think database web applications have to be slow? Think again! With our completely free and open source LiteSpeed Memcached, you can accelerate your site by alleviating database load dynamically!
What is LiteSpeed Memcached (LSMCD)?
LSMCD is a high-performance, distributed caching system with file-backed shared memory designed to behave as a drop-in replacement for Memcached with some marked improvements. Memcached is designed for temporary storage, which could be used to accelerate database applications if the stored results do not change frequently. It can also be used to save PHP session data or cache processing results. However, because of Memcached’s temporary, non-HA nature, if one of your servers goes down, the data stored in that server’s memory is no longer accessible.
Memcached also lacks persistence, so data put into Memcached does not stay there when it is restarted, shut down, or crashes. If you want your data to be saved permanently, you would need to write both to Memcached and a database backend. Even though Memcached makes reading from memory faster, writing to a database is just as slow if not slower than a setup without it.
LiteSpeed Memcached allows for better performance and scalability than Memcached by managing and allocating memory from across one or several servers and storing data in key/value pairs.
What we do better:
Externally LSMCD behaves the same way that Memcached does, but our internal optimizations and improvements make it superior.
- High-Availability – Your data is replicated across several virtual pools of memory making it available even if one or more of your servers go down.
- Memory Persistence – Data written to LSMCD is retained, even after shutting down, restarting, or even crashing. Unlike Memcached, there’s no need for a database backend!
We mentioned databases, but what other processes can LSMCD speed up?
- API calls
- Heavy computations
- Reading files
What data should you store in LSMCD?
Data that is:
- Used often
- Hard to compute
- Shared across users
For more information, visit our LSMCD wiki.
Do you use Memcached? What do you think of our improvements? Tell us in the comments section below.