Memcached

Memcached
Developer(s)Danga Interactive
Initial releaseMay 22, 2003 (2003-05-22)
Stable release
1.6.32[1] Edit this on Wikidata / 20 October 2024; 26 days ago (20 October 2024)
Repository
Written inC
Operating systemCross-platform
Typedistributed memory caching system
LicenseRevised BSD license[2]
Websitememcached.org Edit this on Wikidata

Memcached (pronounced variously /mɛmkæʃˈdiː/ mem-cash-dee or /ˈmɛmkæʃt/ mem-cashed) is a general-purpose distributed memory-caching system. It is often used to speed up dynamic database-driven websites by caching data and objects in RAM to reduce the number of times an external data source (such as a database or API) must be read. Memcached is free and open-source software, licensed under the Revised BSD license.[2] Memcached runs on Unix-like operating systems (Linux and macOS) and on Microsoft Windows. It depends on the libevent library.

Memcached's APIs provide a very large hash table distributed across multiple machines. When the table is full, subsequent inserts cause older data to be purged in least recently used (LRU) order.[3][4] Applications using Memcached typically layer requests and additions into RAM before falling back on a slower backing store, such as a database.

Memcached has no internal mechanism to track misses which may happen. However, some third party utilities provide this functionality.

Memcached was first developed by Brad Fitzpatrick for his website LiveJournal, on May 22, 2003.[5][6] It was originally written in Perl, then later rewritten in C by Anatoly Vorobey, then employed by LiveJournal.[7] Memcached is now used by many other systems, including YouTube,[8] Reddit,[9] Facebook,[10][11] Pinterest,[12][13] Twitter,[14] Wikipedia,[15] and Method Studios.[16] Google App Engine, Google Cloud Platform, Microsoft Azure, IBM Bluemix and Amazon Web Services also offer a Memcached service through an API.[17][18][19][20]

  1. ^ "Release 1.6.32". 20 October 2024. Retrieved 22 October 2024.
  2. ^ a b "Memcached license". GitHub. Retrieved 2014-06-27.
  3. ^ "Google Code Archive - Long-term storage for Google Code Project Hosting". Code.google.com. Retrieved 2017-06-25.
  4. ^ "Google Code Archive - Long-term storage for Google Code Project Hosting". Code.google.com. Retrieved 2017-06-25.
  5. ^ [1]. Community.livejournal.com (2003-05-22). Retrieved on 2013-09-18.
  6. ^ [2]. Community.livejournal.com (2003-05-27). Retrieved on 2013-09-18.
  7. ^ "lj_dev: memcached". 2013-02-25. Archived from the original on 2013-02-25. Retrieved 2017-06-25.
  8. ^ Cuong Do Cuong (Engineering manager at YouTube/Google) (June 23, 2007). Seattle Conference on Scalability: YouTube Scalability (Online Video - 26th minute). Seattle: Google Tech Talks.
  9. ^ Whitaker, Keir (2010-05-17). "Steve Huffman on Lessons Learned at Reddit | Carsonified". Archived from the original on 2010-05-17. Retrieved 2017-06-25.
  10. ^ "Scaling memcached at Facebook". Facebook.com. 2008-12-12. Retrieved 2017-06-25.
  11. ^ Scaling Memcache at Facebook. USENIX. 2002. ISBN 9781931971003. Retrieved 2017-06-25.
  12. ^ "Building Pinterest in the cloud". Pinterest Careers. 2013-06-19. Retrieved 2018-03-09.
  13. ^ "A comprehensive, fast, pure-Python memcached client". Github.com. 2018-01-08. Retrieved 2018-03-09.
  14. ^ "It's Not Rocket Science, But It's Our Work". Blog.twitter.com. 2008-06-01. Retrieved 2017-06-25.
  15. ^ "memcached". MediaWiki. Retrieved 2017-06-25.
  16. ^ Rez BoF, SIGGRAPH 2019, archived from the original on 2021-12-12, retrieved 2019-08-09
  17. ^ "Memcache Examples | App Engine standard environment for Python | Google Cloud Platform". Code.google.com. 2017-03-22. Retrieved 2017-06-25.
  18. ^ "About In-Role Cache for Azure Cache". Msdn.microsoft.com. 2015-08-25. Retrieved 2017-06-25.
  19. ^ Verge, Jason (2014-09-23). "Redis Labs: We Have 3,000 Paying Cloud In-Memory NoSQL Customers". Data Center Knowledge. Retrieved 2016-09-10.
  20. ^ "AWS | Amazon ElastiCache – in-memory data store and cache". Aws.amazon.com. Retrieved 2017-06-25.