Introduzione
Memcached è un archivio dati di key-value in-memory ad alte prestazioni gratuito e open source. Viene generalmente utilizzato per velocizzare le applicazioni memorizzando nella cache vari oggetti dai risultati delle chiamate API e database.
Questo articolo mostra come installare e configurare Memcached su Ubuntu 20.04 LTS Focal Fossa.
Se desideri installare Memcached su un server in remoto continua a leggere, altrimenti salta il primo paragrafo "Connessione al Server" e leggi il successivo.
Connessione al Server
Per accedere al server, è necessario conoscere l'indirizzo IP. Avrai anche bisogno dell'username e della password per l'autenticazione. Per connettersi al server come utente root digitare il seguente comando:
ssh root@IP_DEL_SERVER
Successivamente sarà necessario inserire la password dell'utente root.
Se non utilizzate l'utente root potete connettervi con un'altro nome utente utilizzando lo stesso comando, quindi modificare root con il vostro nome_utente:
ssh nome_utente@IP_DEL_SERVER
Successivamente vi verrà chiesto di inserire la password del vostro utente.
La porta standard per connettersi tramite ssh è la 22, se il vostro server utilizza una porta diversa, sarà necessario specificarla utilizzando il parametro -p, quindi digitare il seguente comando:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Installare Memcached
Il pacchetto memcached è incluso nei repository Ubuntu 20.04 predefiniti. Per installarlo, immettere il seguente comando come root o utente con privilegi sudo:
sudo apt update
sudo apt install memcached libmemcached-tools
Il pacchetto libmemcached-tools
fornisce utilità da riga di comando che è possibile utilizzare per gestire il server memcached.
Una volta completata l'installazione, il servizio memcached verrà avviato automaticamente. Per verificare lo stato del servizio, inserire:
sudo systemctl status memcached
L'output sarà simile al seguente:
● memcached.service - memcached daemon
Loaded: loaded (/lib/systemd/system/memcached.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2020-07-14 13:38:54 CEST; 1min 1s ago
Docs: man:memcached(1)
Main PID: 1605 (memcached)
Tasks: 10 (limit: 2286)
Memory: 1.2M
CGroup: /system.slice/memcached.service
└─1605 /usr/bin/memcached -m 64 -p 11211 -u memcache -l 127.0.0.1 -P /var/run/memcached/memcached.pid
Jul 14 13:38:54 TEST-SERVER-1 systemd[1]: Started memcached daemon.
Ecco fatto, hai installato memcached sul tuo server Ubuntu 20.04 LTS Focal Fossa e puoi iniziare a usarlo.
Configurare Memcached
Le opzioni memorizzate possono essere configurate nel file /etc/memcached.conf
. Per impostazione predefinita, memcached è impostato per l'ascolto solo su localhost.
Le impostazioni di configurazione predefinite sono sufficienti per la maggior parte degli utenti.
Accesso remoto
Se il client che si collega a memcached è in esecuzione sullo stesso host, non si dovrebbe consentire l'accesso remoto.
Se configurato in modo errato, memcached può essere utilizzato per eseguire un attacco DDoS (Distributed Denial of Service). Per consentire l'accesso remoto al server memcached, è necessario configurare il firewall e aprire la porta UDP memcached 11211
solo da client attendibili.
Nell'esempio seguente si presuppone che si desidera connettersi al server memcached su una rete privata. L'IP del server memcached è 192.168.111.222
e l'indirizzo IP del client è 192.168.333.444
.
Il primo passo è modificare la configurazione memcached e impostare il servizio per l'ascolto sull'interfaccia di rete privata del server:
Per fare ciò, apri il file di configurazione memcached.conf
:
sudo nano /etc/memcached.conf
Individua la riga che inizia con -l 127.0.0.1
e sostituisci 127.0.0.1
con l'indirizzo IP del server 192.168.111.222
.
Riavviare il servizio Memcached per rendere effettive le modifiche:
sudo systemctl restart memcached
Una volta configurato il servizio, il passaggio successivo è aprire la porta memcached nel firewall.
sudo ufw allow from 192.168.333.444 to any port 11211
Connessione a Memcached
Esistono molte implementazioni di client memcached scritti per diversi linguaggi di programmazione.
PHP
Per utilizzare Memcached come database di memorizzazione nella cache per l' applicazione PHP come WordPress, Drupal, Joomla o Magento, è necessario installare l'estensione php-memcached
:
sudo apt install php-memcached
Python
Esistono diverse librerie Python per l'interazione con memcache. Puoi installare la tua libreria preferita usando pip:
pip install pymemcache
pip install python-memcached
Conclusione
Ti abbiamo mostrato come installare Memcached su Ubuntu 20.04 LTS Focal Fossa. Per ulteriori informazioni su questo argomento, consultare Memcached Wiki.