Distributed cache
In computing, a distributed cache is an extension of the traditional concept of cache used in a single locale. A distributed cache may span multiple servers so that it can grow in size and in transactional capacity. It is mainly used to store application data residing in database and web session data. The idea of distributed caching[1] has become feasible now because main memory has become very cheap and network cards have become very fast, with 1Gbit now standard everywhere and 10Gbit gaining traction. Also,a distributed cache works well on lower cost machines usually employed for web servers as opposed to database servers which require expensive hardware.[2]
Some distributed cache products are AppFabric Caching Service, NCache, Oracle Coherence, IBM WebSphere eXtreme Scale, Memcached and Ehcache.
See also
- Cache algorithms
- Cache coherence
- Cache-oblivious algorithm
- Cache stampede
- Cache language model
- Database cache
- Cache manifest in HTML5
Further reading
- Address Scalability Bottlenecks with Distributed Caching
- ASP.NET Web Cache Spurs Performance and Scalability
- Clouds Done Right - Distributed Caching Removes Bottlenecks
- "What Every Programmer Should Know About Memory" by Ulrich Drepper
- "Caching in the Distributed Environment"
References
- ^ Paul, S; Z Fei (2001-02-01). "Distributed caching with centralized control". Computer Communications 24 (2): 256–268. doi:10.1016/S0140-3664(00)00322-4.
- ^ Khan, Iqbal. "Distributed Caching On The Path To Scalability". MSDN (July 2009). http://msdn.microsoft.com/en-us/magazine/dd942840.aspx. Retrieved 2012-3-30.