memcached

Download Memcached

If you can't read please download the document

Upload: flavio-castelli

Post on 02-Jun-2015

530 views

Category:

Technology


2 download

DESCRIPTION

Una breve introduzione a memecached

TRANSCRIPT

  • 1. Memecached @ Codelovers Flavio Castelli

2. Cosa e'

  • Key/value store

3. Memorizza tutto in RAM 4. Forgetting data is a feature 5. No persistent storage 6. Cosa non e'

  • Database

7. Http accelerator 8. Architettura

  • Diviso in due parti:
    • server
  • 9. client

Importante:intelligenza divisa tra client e server. 10. Server

  • Memorizza le coppie chiave/valore in una hash table interna

11. Cancella i dati memorizzati quando:

    • Viene raggiunta la scadenza impostata dall'utente
  • 12. Esaurisce la memoria a disposizione

Non e' al corrente degli altri server:

  • Non parla con loro

13. Non c'e' sincronizzazione 14. Non ci sono messaggi in broadcast Non e' consapevole di cio' che viene memorizzato. 15. Client

  • Disponibili per i principali linguaggi di programmazione

16. Ha la lista di tutti i server 17. Sceglie ogni volta il server su cui memorizzare i dati 18. Sa cosa fare quando un server non e' raggiungibile 19. Si preoccupa di serializzare i valori da memorizzare 20. Sa come recuperare i dati 21. Usi tipici

  • Caching risultati delle query lente

22. Fragmented caching 23. Altro, dato che puo' memorizzare:

    • Numeri
  • 24. Stringhe

25. Liste 26. Dizionari 27. Oggetti 28. Come scalare

  • Aggiungere un nuovo server

29. Aggiornare la lista dei sever lato client 30. => Memoria totale = SUM(memoria singoli server) 31. Shit happens Cosa succede se uno o piu' server cadono?

  • => Diminuzione temporanea delle hit

32. Limiti

  • Dimensione massima chiave: 250 Bytes

33. Dimensione massimavalue: 1 Megabyte 34. Max expire time: 30 giorni 35. Modificare la lista dei server puo' invalidare tutta la cache 36. SUSE Studio

  • Ruby on Rails

37. 191000+ utenti 38. ~670 build giornaliere 39. 3 application server 40. 4 istanze di memcached (limitate ad 1GB per istanza) 41. Domande 42. Riferimenti

  • memcached:http://code.google.com/p/memcached/

43. Using memcached: How to scale your website easily by Josef Finsted The pragmatic Bookshelf