Como instalar Memcached en Ubuntu 22.10/22.04/20.04

Memcached pode ser moi útil para acelerar os tempos de resposta en sitios web dinámicos. Dado que o software reside na memoria RAM e non en dispositivos de almacenamento externos, pode aproveitar cando o seu sitio web necesita información rapidamente sen esperar. Cando se usa correctamente, Memcached pode mellorar significativamente a experiencia do usuario no teu sitio web reducindo a latencia e aumentando a velocidade xeral dos tempos de resposta. Ademais, como Memcached é de código aberto, calquera pode usalo sen pagar taxas de licenza. Non obstante, debido a que Memcached depende da memoria RAM, pode ser caro ampliar se tes un sitio web grande con moito tráfico. En xeral, Memcached pode ser unha boa forma de mellorar o rendemento do teu sitio web, pero debes considerar coidadosamente se é ou non a solución adecuada para as túas necesidades específicas.

O seguinte tutorial ensinarache como instalar e configurar Memcached no teu sistema Linux Ubuntu 22.10, 22.04 e 20.04 e algúns exemplos básicos de configuración.

Aviso importante

O seguinte tutorial realizouse cunha versión de Ubuntu 22.04 LTS e tomáronse imaxes de exemplo. Aínda así, probouse en Ubuntu 20.04 e Ubuntu 22.10. No futuro, se Ubuntu fai algún cambio para romper o titorial dunha das versións de distribución, coloque a comentario para que investigue para poder actualizar o tutorial.

Pasos recomendados antes da instalación

Antes de continuar co titorial, é bo asegurarse de que o seu sistema estea actualizado con todos os paquetes existentes.

sudo apt update

Opcionalmente, pode listar as actualizacións para os usuarios que precisen revisión ou teñan curiosidade.


sudo apt --list upgradable

Continúa coa actualización dos paquetes obsoletos usando o seguinte comando.

sudo apt upgrade

Instala Memcached en Ubuntu Linux

Por defecto, Ubuntu 22.04 ten Memcached nos seus repositorios. Para instalar Memcached, introduza o seguinte comando:

sudo apt install memcached libmemcached-tools -y

Teña en conta a segunda opción de instalación, o "libmemcached-tools" paquete, ofrece comandos adicionais para ofrecer interacción adicional e executar habilidades para Memcached.

A continuación, verifique que Memcached se instalou correctamente usando o comando de entrada de versión.

memcached --version

Exemplo de saída:

exemplo verifique a versión de memcached en ubuntu linux

Activa o servizo Memcached en Ubuntu Linux

Memcached debería estar activado por defecto. Para verificalo, use o comando de estado systemctl como segue.


systemctl status memcached

Exemplo de saída:

exemplo comprobar o servizo memcached en ubuntu linux

Se o servizo non se activou, inicie Memcached usando o seguinte comando:

sudo systemctl enabled memcached --now

Outros comandos útiles para xestionar o servizo Memcached son os seguintes:

Inicie o servizo Memcached na sesión de usuario actual:

sudo systemctl start memcached

Activa o servizo Memcached ao iniciar o sistema:

sudo systemctl enable memcached

Detén o servizo Memcached:


sudo systemctl stop memcached

Desactive o servizo Memcached ao iniciar o sistema:

sudo systemctl disable memcached

Reinicie o servizo Memcached:

sudo systemctl restart memcached

A continuación, verifique que Memcached escoita activamente localhost de forma predeterminada porto 11211. Para confirmar este tipo, o seguinte:

ps -ef | grep memcached

Exemplo de saída:

exemplo, verifique os portos abertos en ubuntu linux para memcached

Configura Memcached en Ubuntu Linux

Memcached debe estar escoitando 127.0.0.1. A continuación, abra a configuración predeterminada no ficheiro de configuración situado en "/etc/memcached.conf”.

sudo nano /etc/memcached.conf

Agora desprácese cara abaixo, busque a seguinte liña e comprobe "-l" parámetro. Deixa como predeterminado a non ser que teñas unha IP interna nunha rede local ou unha IP externa desde fóra; debe modificar o enderezo IP predeterminado de 127.0.0.1 ao novo enderezo IP.


-l 127.0.0.1

Recoméndase desactivar UDP. A menos que necesites activar esta función, engade a seguinte liña para desactivala.

-U 0

Antes de rematar, recoméndase cambiar a asignación de memoria predeterminada de 64 MB, xa que isto non é moito para sitios web máis grandes e non verá moitos beneficios ao usar Memcached.

Debes configurar isto en algo razoable para o teu servidor. Se tes de 3 a 6 GB de RAM apenas usada, pon a 1 ou 2 GB. Esta é unha configuración que debes decidir que funciona mellor para o teu servidor. O servidor da guía funciona con 8 GB, polo que só axustamos a nosa caché a 2 GB como exemplo e aumentaremos segundo sexa necesario.

-m 2000

Agora garda o ficheiro CTRL + O e golpeou "Y" logo CTRL + X para saír e reiniciar a súa instancia de Memcached.

sudo systemctl restart memcached

Permitir as regras de Memcached UFW en Ubuntu Linux

Se tes UFW activo, debes crear regras de permiso UFW no Porto TCP 11211. Dependendo da súa instalación e dos seus requisitos, se utiliza unha rede singular ou en clúster, a continuación móstranse algúns exemplos:

Exemplo de conexión de rede IP singular:


sudo ufw allow proto tcp from <ip address> to any port 11211

Conexión de rede IP de clúster con moitos exemplos de exemplo:

sudo ufw allow proto tcp from <ip address>/24 to any port 11211

Teña en conta que a segunda regra UFW é unha regra de subrede. Teña en conta que asegúrese de que a rede interna sexa segura e fiable antes de permitilo.

Instale as bibliotecas PHP Memcached en Ubuntu Linux

Memcached inclúe varias extensións para as linguaxes de programación, pero úsase principalmente para PHP. Para instalar a biblioteca PHP, introduza o seguinte.

sudo apt install php-memcached apache2 libapache2-mod-php php php-cli php-memcached php-memcached

Servidor HTTP Apache

Os usuarios de Apache poden executar o seguinte código para activar Memcached no seu sistema.

phpenmod memcached && sudo service apache2 restart

Servidor HTTP Nginx

Memcached para Nginx activarase no teu bloque PHP por defecto unha vez instalado.

Instala bibliotecas adicionais en Ubuntu Linux

Podes instalar compatibilidade con Python ou Perl executando os seguintes comandos.


Instale o soporte de Memcached Python:

sudo apt install python3-pymemcache -y

Instalar soporte de Memcached Perl:

sudo apt install libcache-memcached-libmemcached-perl -y

Acceda a Memcached desde a liña de comandos en Ubuntu Linux

As estatísticas de Memcached pódense recoller mediante moito software adicional e as interfaces de usuario WEB coas que traballa. Non obstante, unha mellor forma de comprobar é interactuar con Memcached directamente mediante a liña de comandos.

En primeiro lugar, TELNET ao seu servizo. Lembre, se usa Telnet, bloquearíao coa regra do firewall UFW e usaríao só nun ambiente local, non o usaría desde fóra. Por exemplo, Telnet do teu PC ao teu servidor con TELNET. Deberías entrar en SSH e abrir unha sesión Telnet no entorno local do teu servidor.

telnet localhost 11211

Exemplo de saída:

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

Instale Telnet usando o seguinte comando se non está instalado.

apt-get install telnet

Lembra, asegúrate de ter configuradas as regras de firewall UFW e usalas só no servidor local, non te conectes remotamente fóra do servidor.

A continuación, podes obter unha visión xeral do teu servizo Memcached usando o seguinte comando:


stats

Exemplo de saída:

STAT pid 5934
STAT uptime 1275
STAT time 1631930242
STAT version 1.6.9
STAT libevent 2.1.12-stable
STAT pointer_size 64
STAT rusage_user 0.113635
STAT rusage_system 0.000000
STAT max_connections 1024
STAT curr_connections 1
STAT total_connections 2
STAT rejected_connections 0
STAT connection_structures 2
STAT response_obj_oom 0
STAT response_obj_count 1
STAT response_obj_bytes 16384
STAT read_buf_count 2
STAT read_buf_bytes 32768
STAT read_buf_bytes_free 0
STAT read_buf_oom 0
STAT reserved_fds 20
STAT cmd_get 0
STAT cmd_set 0
STAT cmd_flush 0
STAT cmd_touch 0
STAT cmd_meta 0
STAT get_hits 0
STAT get_misses 0
STAT get_expired 0
STAT get_flushed 0
STAT delete_misses 0
STAT delete_hits 0
STAT incr_misses 0
STAT incr_hits 0
STAT decr_misses 0
STAT decr_hits 0
STAT cas_misses 0
STAT cas_hits 0
STAT cas_badval 0
STAT touch_hits 0
STAT touch_misses 0
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 7
STAT bytes_written 0
STAT limit_maxbytes 67108864
STAT accepting_conns 1
STAT listen_disabled_num 0
STAT time_in_listen_disabled_us 0
STAT threads 4
STAT conn_yields 0
STAT hash_power_level 16
STAT hash_bytes 524288
STAT hash_is_expanding 0
STAT slab_reassign_rescues 0
STAT slab_reassign_chunk_rescues 0
STAT slab_reassign_evictions_nomem 0
STAT slab_reassign_inline_reclaim 0
STAT slab_reassign_busy_items 0
STAT slab_reassign_busy_deletes 0
STAT slab_reassign_running 0
STAT slabs_moved 0
STAT lru_crawler_running 0
STAT lru_crawler_starts 6
STAT lru_maintainer_juggles 1325
STAT malloc_fails 0
STAT log_worker_dropped 0
STAT log_worker_written 0
STAT log_watcher_skipped 0
STAT log_watcher_sent 0
STAT unexpected_napi_ids 0
STAT round_robin_fallback 0
STAT bytes 0
STAT curr_items 0
STAT total_items 0
STAT slab_global_page_pool 0
STAT expired_unfetched 0
STAT evicted_unfetched 0
STAT evicted_active 0
STAT evictions 0
STAT reclaimed 0
STAT crawler_reclaimed 0
STAT crawler_items_checked 0
STAT lrutail_reflocked 0
STAT moves_to_cold 0
STAT moves_to_warm 0
STAT moves_within_lru 0
STAT direct_reclaims 0
STAT lru_bumps_dropped 0
END

Como o anterior, isto mostra algunhas cousas cruciais que pode querer ver, como o tempo de actividade, o número de elementos na caché e o número de conexións de clientes coa instancia.

Podes refinar a busca mirando as diferentes placas (particións) de memoria de Memcached para devolver resultados.

Exemplos a continuación:

Lista as placas na instancia conectada:

stats slabs

Lista de lousas que inclúe o reconto dos elementos almacenados dentro de cada lousa:


stats items

A continuación, pode acceder e eliminar os datos usando o comando cachedump para enumerar as claves.

En primeiro lugar, executa o comando cachedump:

stats cachedump [slab ID] [number of items, 0 for all items]

Exemplo en acción:

stats cachedump 1 0

Exemplo de saída:

ITEM testkey [9 b; 1296857316 s]
END

Como se mencionou anteriormente, SLAB 1 ten un elemento co "clave de proba". Para obter o valor real, pode usar o "obter a chave" manda como segue:

get testkey

Exemplo de saída:


VALUE testkey 0 9
test data
END

Por último, para eliminar un elemento almacenado na caché, neste caso, o "clave de proba" usa o seguinte comando:

delete testkey

Exemplo de saída:

DELETED


Non é o que buscabas? Proba a buscar titoriais adicionais.

Deixe un comentario