yrmcds is a memory object caching system with master/slave replication.
Currently, yrmcds supports two protocols: the first is an enhanced memcached, and another is a protocol to implement distributed resource counters.
Since the memcached protocol is perfectly compatible with the original implementation, yrmcds can be used as a drop-in replacement for memcached. Thanks to its virtual-IP based replication system, existing applications can obtain high-available memcached-compatible service without any modifications.
A companion client library libyrmcds and a PHP extension are also available.
yrmcds was developed originally for kintone.com.
Features
- Complete memcached text and binary protocols with these extensions:
- Distributed resource counter protocol.
- Optional memory security to store confidential information like SSL session data.
- Large objects can be stored in temporary files, not in memory.
- Virtual-IP based master-slave replication.
- Automatic fail-over
- Automatic recovery of redundancy.
- Global LRU eviction / no slab distribution problem.
Documentation
HTML manual is available here.
About the name
The name yrmcds was taken from "Ymmt's Replicating MemCacheD for Sessions".
As it reads, yrmcds was developed mainly for session storage.
The correct pronunciation sounds like: "Yo-Ru-Mac-Do" (夜マクド in Japanese).
License
yrmcds is licensed under the BSD 2-clause license.
The source code contains a SipHash implementation borrowed from csiphash which is licensed under the MIT license.