Sei un utente Linux?Sapevi che un elemento chiamato cache è ospitato nella memoria del computer? Quando facciamo uso di un oggetto web, sia esso un sito web, un'applicazione web o qualsiasi elemento che si basi su questa tecnologia, alcune istruzioni e dati verranno archiviati in memoria per impostazione predefinita, il cui scopo è che il processore possa accedervi continuamente . Ciò consente di risparmiare tempo e risorse non dovendo ripetere le istruzioni, e questo è ciò che è noto come memoria cache. La memoria cache è stata progettata per organizzare in modo molto più centralizzato la memorizzazione dei dati nel sistema. A tutti noi piace che quando diamo un ordine viene eseguito velocemente e proprio questo è il suo scopo.
Ora parleremo di un'applicazione Linux che mira a gestire meglio la cache di memoria ed è memchached.
Che cosa è memcached?L'utility memcached è stata concepita per essere un sistema di caching associato a oggetti di memoria distribuita ma con un approccio ad alte prestazioni. Cioè, il suo obiettivo iniziale è quello di accelerare le applicazioni web dinamiche alleggerendo il carico sul database che agisce quando è necessario accedervi. Ricordiamo che quando si clicca internamente un collegamento web, avvengono molti processi, e per questo visto in questo modo, memcached può fungere da memoria a breve termine per le applicazioni web con cui lavoriamo.
Il design semplice con cui è stato creato memcached consentirà una rapida implementazione facilitando allo stesso tempo lo sviluppo e la gestione di cache di dati di grandi dimensioni. Oltre a questo, non possiamo dimenticare che l'API è disponibile per i linguaggi più utilizzati, ovvero siamo di fronte a un'App molto utile, dinamica e versatile.
Abbiamo parlato molto del lavoro globale di memcached nel nostro sistema per la gestione della cache in memoria, ma sicuramente ti starai chiedendo, come funziona? Solvetic spiegherà questo compito in dettaglio.
Come funziona memchached?Fondamentalmente memcached ha il potere di accedere a diverse sezioni di memoria nel sistema; ma accederà solo alla memoria disponibile e di riserva, non utilizzerà mai la memoria riservata a processi o servizi. Prendendo questa memoria disponibile, la consegnerà e la implementerà in aree in cui la memoria è limitata o scarsa.
Quando si utilizza memcached dobbiamo tenere a mente queste caratteristiche di utilizzo:
- Ogni nodo è completamente indipendente dall'altro.
- Ciascun nodo è in grado di utilizzare la memoria di altri nodi per ottimizzare i processi con scarsa memoria.
Ora, vediamo quali elementi compongono l'applicazione memcached:
Elementi che compongono memcached
- Prima di tutto memcached ha un software client, che è essenziale in quanto fornisce un elenco di server memcached disponibili.
- Vedremo anche un algoritmo di hashing, che è un algoritmo basato su client e la sua missione è selezionare un server basato sulla chiave distribuita.
- Troveremo poi il software server che ha il compito di archiviare i valori con le chiavi loro assegnate in una hash table interna, qualcosa scalato a livello di sicurezza.
- Ultimo ma non meno importante, troviamo il LRU. Questo determina quando memcached deve accedere ai vecchi dati, (attenzione, se non c'è memoria) o riutilizzare la memoria disponibile.
Prima di entrare nei dettagli per imparare come installare e utilizzare memcached, diamo un'occhiata ad alcune delle sue funzionalità per vedere se l'uso di questa utility attira o meno la nostra attenzione:
Funzionalità memorizzate nella cache
- Utilizzo di Hash su più server.
- Archiviazione di dati binari o stringhe.
- Hashing coerente in modo nativo o tramite una libreria esterna.
- Serializzazione di strutture dati.
- Comandi di ripristino standard tramite il comando Get.
Ora senza ulteriori dettagli vedremo come installare memcached in CentOS 7.
1. Come aggiornare i pacchetti di sistema per installare memcached su CentOS 7 Linux
Il primo passo ogni volta che dobbiamo fare è aggiornare i pacchetti di sistema, per questo eseguiremo il seguente comando:
sudo yum aggiornamento
INGRANDIRE
2. Come installare memcached su CentOS 7 Linux
Passo 1
Una volta aggiornato il sistema, procederemo con l'installazione di memcached, che avverrà con l'esecuzione del seguente comando:
sudo yum install memcachedLì inseriremo la lettera y per confermare il download e l'installazione di memcached in CentOS 7
INGRANDIRE
Passo 2
Una volta installato vedremo quanto segue:
INGRANDIRE
Passaggio 3
Il prossimo passo è installare libmemcached, che è una libreria client dove avremo un paio di strumenti speciali per gestire il server memcache; qualcosa che sarà molto utile per le attività di supporto. Per questa installazione eseguiremo quanto segue:
sudo yum install libmemcached
INGRANDIRE
Passaggio 5
Lì inseriamo la lettera y per procedere con l'installazione di queste librerie.
INGRANDIRE
NotaUn'altra opzione per installare memcached su CentOS 7 è direttamente dalla fonte. Per fare ciò, dobbiamo eseguire, nel loro ordine, le seguenti righe:
sudo yum install libevent-devel sudo wget https://memcached.org/latest tar -zxf memcached-1.xxtar.gz cd memcached-1.xx ./configure --prefix = / usr / local / memcached make && make test && sudo make install
3. Come configurare memcached su CentOS 7 Linux
Affinché memcached funzioni correttamente, il servizio memcached dovrà essere in ascolto tramite l'indirizzo locale 127.0.0.1.
Passo 1
Per configurarlo dobbiamo applicare una modifica alla variabile OPTIONS nel file di configurazione /etc/sysconfig/memcached. Per questo useremo un editor di testo come nano o vi:
sudo nano / etc / sysconfig / memcached
INGRANDIRE
Passo 2
Possiamo vedere che la riga OPTIONS è vuota, lì inseriremo la seguente riga:
-l 127.0.0.1 -U 0
INGRANDIRE
Salviamo le modifiche utilizzando i seguenti tasti:
Ctrl + O
Usciamo dall'editor utilizzando i tasti:
Ctrl + X
Per capire un po' di più quali elementi compongono il file di configurazione memcached, Solvetic spiegherà il ruolo di ciascuno:
PORTACome ci si potrebbe aspettare, senza conoscere molto l'inglese, questa è la porta che memcached usa per la sua esecuzione.
UTENTEQuesto valore si riferisce al demone di avvio per il servizio memcached.
MAXCONNÈ un valore chiave per definire il numero di connessioni simultanee, per impostazione predefinita il suo valore è 1024 ma logicamente in base al livello di accesso al server questo valore può essere modificato nel valore necessario.
DIMENSIONE DELLA CACHEUn altro valore che possiamo dedurre è il valore della dimensione della cache che di default è 2048 ma possiamo impostarla fino a 4 GB.
OPZIONIQuesta è la riga che modifichiamo e lì possiamo configurare l'indirizzo IP del server, consentendo così ai server Web Apache o Nginx di stabilire connessioni con esso.
Passaggio 3
Una volta che queste modifiche sono state elaborate, dobbiamo applicarle, per questo eseguiamo quanto segue:
systemctl riavvia memcached systemctl abilita memcached
INGRANDIRE
Passaggio 4
Quando il servizio è stato avviato, convalideremo che il servizio memcached è legato all'interfaccia locale (127.0.0.1) e ascolta solo su connessioni TCP. Per questo controllo utilizzeremo il comando netstat come segue:
netstat -plunt
INGRANDIRE
Passaggio 5
Sarà inoltre possibile verificare le statistiche del server tramite la riga memcached-tool:
memcached-tool 127.0.0.1 statistiche
INGRANDIRE
Il passaggio successivo consiste nel consentire l'accesso al server memcached aprendo una porta 11211 sul firewall. Ciò impedirà che venga bloccato dalle regole di sicurezza. Eseguiremo quanto segue:
firewall-cmd --permanent --zone = public --add-port = 11211 / tcpCi sono alcune opzioni aggiuntive che possiamo installare in modo che memcached ottimizzi l'uso delle applicazioni in base alla lingua utilizzata:
yum install php-pecl-memcache (estensione memcached per PHP) yum install perl-Cache-Memcached (estensione memcached per PERL) yum install python-memcached (estensione memcached per PYTHON)Solvetic ti offre sempre il meglio per gestire ogni aspetto del sistema e con memcached sarà possibile gestire ogni aspetto della cache in CentOS 7 in modo molto più globale.