Memcached
Store chiave-valore in-memory, distribuito e di facile utilizzo per l'uso come cache o store delle sessioni ad alte prestazioni.
Che cos'è Memcached?
Memcached è un datastore in-memory, di facile utilizzo e ad alte prestazioni. Offre una soluzione matura, scalabile e open-source per ottenere tempi di risposta inferiori a un millisecondo, una funzionalità utile come cache o store delle sessioni. Memcached è una scelta popolare per le applicazioni in tempo reale su Web, app mobile, videogiochi, tecnologia pubblicitaria ed e-commerce.
Come funziona Memcached?
A differenza dei database che memorizzano i dati su disco o su SSD, Memcached archivia i dati in memoria. Eliminando l'esigenza di accedere ai dischi, gli store chiave-valore in-memory come Memcached evitano i ritardi dovuti ai tempi di ricerca e sono in grado di accedere ai dati in pochi microsecondi. Inoltre, Memcached è distribuito, il che significa che è facilmente scalabile aggiungendo nuovi nodi. E dal momento che Memcached è multi-thread, è possibile aumentare facilmente la capacità di elaborazione. Come conseguenza della velocità e della scalabilità, oltre a un design semplice, efficiente gestione della memoria e supporto API per la maggior parte delle lingue, Memcached è una scelta popolare per i casi d'uso di caching su larga scala e ad alte prestazioni.
Memcached interamente gestito con sicurezza e scalabilità.
Vantaggi di Memcached
Tempi di risposta inferiori al millisecondo
Memcached conserva tutti i dati nella memoria principale del server. A differenza dei datastore come PostgreSQL, Cassandra e MongoDB che memorizzano la maggior parte dei dati su disco o SSD, i datastore in-memory non devono tornare ciclicamente al disco. Questo consente loro di supportare una quantità di operazioni di ordine di grandezza superiore e tempi di risposta più rapidi. Il risultato è costituito da prestazioni incredibilmente elevate con tempi medi di lettura e scrittura inferiori al millisecondo e supporto per milioni di operazioni al secondo.
Semplicità e intuitività
Memcached è progettato per essere semplice e generico, una caratteristica che lo rende potente e di facile utilizzo nello sviluppo di applicazioni. Per gli sviluppatori Memcached sono disponibili numerosi client open source. Tra i linguaggi supportati sono presenti Java, Python, PHP, C, C++, C#, JavaScript, Node.js, Ruby, Go e molti altri.
Scalabilità
L'architettura distribuita e multi-thread di Memcached facilita la scalabilità. Puoi suddividere i dati tra numerosi nodi, per scalare la capacità aggiungendo nuovi nodi al tuo cluster. Inoltre, dal momento che Memcached è multi-thread, può utilizzare più core su un nodo dato. Questo semplifica la scalabilità della capacità di elaborazione. Con Memcached puoi costruire soluzioni di cache distribuita a elevata scalabilità, progettate per fornire prestazioni rapide e uniformi.
Community
Memcached è un progetto maturo e open source, supportato da una vivace community. Applicazioni come WordPress e Django supportano l'utilizzo di Memcached per migliorare le prestazioni. Non esistono vincoli di fornitore o di tecnologia; Memcached è basato su standard aperti, supporta formati di dati aperti e funziona con diversi client.
Casi d'uso di Memcached comuni
Caching
Memcached è la soluzione ideale per implementare caching in memoria a elevate prestazioni e ridurre la latenza dei dati in accesso, potenziare il throughput e alleggerire il carico dai sistemi di back-end in uso. Memcached è in grado di servire elementi in cache in meno di un millisecondo e consente di scalare in modo facile e conveniente per carichi superiori. Memcached è molto utilizzato per caching dei risultati delle query dei database, caching di sessioni, caching di pagine Web, caching di API e caching di oggetti quali immagini, file e metadati.
Memorizzazione
Memcached come datastore in-memory è una soluzione gettonata tra gli sviluppatori di applicazioni per la memorizzazione e gestione dei dati delle sessioni per applicazioni in scala Internet, nei casi in cui la persistenza non è cruciale. Memcached è progettato per fornire una latenza inferiore a un millisecondo e la scala richiesta per la gestione dei dati delle sessioni, quali profili utente, credenziali e stato delle sessioni.
Supporto per le lingue
Memcached supporta la maggior parte delle sintassi e dei protocolli di programmazione più importanti, tra cui:
Python
Java
PHP
C/C#/C++
Perl
Go
Ruby
JavaScript
Node.js
Protocollo ASCII
Protocollo binario
Protocolli TCP e UDP
Redis vs. Memcached
Redis e Memcached sono i due datastore chiave-valore in-memory più popolari. Memcached è stato pensato per essere semplice, mentre Redis offre una ricca serie di funzionalità che lo rendono efficace per gli usi più svariati. Comprendi le differenze tra i due motori per decidere quale soluzione soddisfa meglio le tue esigenze. Ulteriori informazioni su Redis vs. Memcached »
Servizio Memcached completamente gestito in AWS
Amazon offre un servizio Memcached interamente gestito, Amazon ElastiCache for Memcached:
- Configura, utilizza e scala facilmente le distribuzioni Memcached nel cloud. I nodi con errori vengono automaticamente rilevati e sostituiti.
- Trai vantaggio dalla capacità hardware conveniente e ridimensionabile.
- Utilizza un client cluster ElastiCache Memcached con individuazione automatica per accelerare lo sviluppo delle applicazioni semplificando la gestione dei nodi.
Registrati
Impara con semplici tutorial
Inizia a creare
Risorse per Memcached