In Memory Cache
Commercial:
Open Source:
- Client libraries are available in C, Java, PHP, etc.
- Clients partition data across memcached servers using modular hash algorithm 'key % # partitions'.
- If an item isn't found in the cache, it's looked up in the source of truth and added to the cache. The extra cost of hitting the source of truth is amortized across all the accesses.
- Distributed Caching with Memcached
- Consistent Hashing
- FAQ: http://www.socialtext.net/memcached/index.cgi?faq