Ki jan yo enstale Memcached sou Ubuntu 20.04

Memcached yo itilize pou akselere sit entènèt dinamik ki baze sou baz done ak kachèt done ak objè nan RAM. Sa a diminye kantite fwa yo dwe li yon sous done ekstèn, sa ki diminye depans anlè epi akselere tan repons yo. Lojisyèl kachèt memwa a se yon pwojè gratis, sous louvri ke nenpòt moun ka itilize.

Nan leson patikilye sa a, ou pral konnen ki jan yo enstale ak konfigirasyon Memcached sou Ubuntu 20.04 ou a sistèm opere.

Kondisyon

  • OS rekòmande: Ubentu 20.04 - si ou vle (Ubuntu 21.04)
  • Kont itilizatè: Yon kont itilizatè ki gen aksè sudo oswa rasin.

Mete ajou sistèm operasyon

Mete ajou ou Ubentu 20.04 sistèm operasyon asire w ke tout pakè ki egziste deja yo Alamòd:

sudo apt update && sudo apt upgrade

reklam


Enstale Memcached

Pa default, Ubuntu 20.04 gen Memcached nan depo li yo. Pou enstale Memcached, antre lòd sa a:

sudo apt install memcached libmemcached-tools

Egzanp pwodiksyon:

Ki jan yo enstale Memcached sou Ubuntu 20.04

Kalite "Y,” Lè sa a, peze "ENTRE KLE" kontinye ak enstalasyon an.

Remake byen, dezyèm opsyon enstalasyon an, "libmemcached-tools” pake, bay kòmandman adisyonèl pou pote entèraksyon siplemantè ak egzekite kapasite nan Memcached.

Apre sa, verifye Memcached te enstale kòrèkteman lè l sèvi avèk la lòd politik apt-cache:

sudo apt-cache policy memcached

Egzanp pwodiksyon:

Ki jan yo enstale Memcached sou Ubuntu 20.04

Memcached ta dwe aktive pa default. Pou verifye sa, sèvi ak la kòmand estati systemctl jan sa a:

systemctl status memcached

Egzanp pwodiksyon:

Ki jan yo enstale Memcached sou Ubuntu 20.04

Si sèvis la pa te aktive, kòmanse Memcached lè l sèvi avèk lòd sa a:

sudo systemctl start memcached

Lòt kòmandman itil pou jere sèvis Memcached la se jan sa a:

Pou pèmèt sèvis Memcached sou bòt sistèm lan:

sudo systemctl enable memcached

Pou sispann sèvis Memcached la:

sudo systemctl stop memcached

Pou enfim sèvis Memcached sou bòt sistèm lan:

sudo systemctl disable memcached

Pou rekòmanse sèvis Memcached la:

sudo systemctl restart memcached

Apre sa, verifye Memcached ap koute aktivman localhost sou default la pò 11211. Pou konfime kalite sa a, sa ki annapre yo:

ps -ef | grep memcached

Egzanp pwodiksyon:

Ki jan yo enstale Memcached sou Ubuntu 20.04

Konfigirasyon Memcached

Memcached dwe koute 127.0.0.1. Apre sa, louvri paramèt defo a nan fichye konfigirasyon ki sitiye nan "/etc/memcached.conf “.

sudo nano /etc/memcached.conf

Koulye a, desann epi jwenn liy sa a epi tcheke la "-l" paramèt ki egziste. Kite kòm default sof si ou gen IP entèn sou yon rezo lokal oswa IP ekstèn soti deyò; ou dwe modifye adrès IP defo a soti nan 127.0.0.1 nan nouvo adrès IP la.

-l 127.0.0.1

Li rekòmande pou enfim UDP. Sòf si ou mande pou fonksyon sa a aktive, ajoute liy sa a pou enfim li.

-U 0

Anvan ou fini, chanje alokasyon memwa default 64MB rekòmande paske sa a se pa anpil pou pi gwo sit entènèt, epi ou pa pral wè anpil benefis lè l sèvi avèk Memcached.

Ou bezwen mete sa a yon bagay rezonab pou sèvè ou. Si ou gen 3 a 6 GB RAM diman itilize, mete l nan 1GB oswa 2GB. Sa a se yon anviwònman ou dwe deside ki kouri pi byen pou sèvè ou a. Sèvè gid la kouri sou 8GB, kidonk nou ajiste kachèt nou an 2GB kòm yon egzanp sèlman.

-m 2000

Koulye a sove fichye a CTRL + O ak frape "Y," lè sa a, Ctrl + X pou sòti epi rekòmanse egzanp Memcached ou a.

sudo systemctl restart memcached

reklam


Si ou vle - Pèmèt Règ Memcached UFW

Si ou gen UFW aktif, ou bezwen kreye règ pèmèt UFW sou la TCP pò 11211. Tou depan de enstalasyon w ak kondisyon ou si w ap itilize sengilye oswa nan yon rezo gwoup, kèk egzanp yo anba a:

Egzanp koneksyon rezo IP inik:

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

Cluster IP koneksyon rezo ak anpil egzanp egzanp:

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

Remake byen, dezyèm règ UFW la se yon règ sou rezo. Remake byen, asire w ke rezo entèn la an sekirite epi ou fè konfyans anvan ou pèmèt li.

Enstale Bibliyotèk PHP Memcached

Memcached vini ak ekstansyon divès kalite pou lang yo pwogramasyon, men li se sitou itilize pou PHP la. Pou enstale bibliyotèk PHP a antre sa ki annapre yo.

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

Apache HTTP sèvè

Itilizatè Apache yo ka egzekite kòd sa a pou pèmèt Memcached sou sistèm yo.

phpenmod memcached && sudo service apache2 restart

Nginx HTTP sèvè

Memcached pou Nginx pral aktive nan blòk PHP ou pa default yon fwa enstale.


reklam


Enstale Bibliyotèk Lòt

Ou ka enstale sipò Python ak oswa Perl lè w egzekite kòmandman sa yo.

Sipò pou Python:

sudo apt install python3-pymemcache

Sipò Perl:

sudo apt install libcache-memcached-libmemcached-perl

Aksè Memcached nan Liy Kòmand

Statistik Memcached yo ka rasanble pa anpil lojisyèl adisyonèl ak UI WEB ke li travay ansanm ak. Sepandan, yon pi bon fason pou tcheke se kominike avèk Memcached dirèkteman lè l sèvi avèk liy lòd la.

Premyèman, TELNET nan sèvis ou:

telnet localhost 11211

Egzanp pwodiksyon:

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

Apre sa, ou ka jwenn yon apèsi sou sèvis Memcached ou lè w sèvi ak lòd sa a:

stats

Egzanp pwodiksyon:

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

Kòm pi wo a, sa a montre kèk bagay enpòtan ou ka vle wè, tankou disponiblite, kantite atik nan kachèt la, ak kantite koneksyon kliyan ak egzanp lan.

Ou ka rafine rechèch la lè w gade diferan plak Memcached (patisyon) memwa pou retounen rezilta yo.

Egzanp anba a:

Lis dal yo nan egzanp ki konekte:

stats slabs

Lis dal ki gen ladann yon konte atik ki estoke nan chak dal:

stats items

Apre sa, ou ka jwenn aksè ak efase done lè l sèvi avèk la lòd cachedump pou lis kle yo.

Premyèman, egzekite a lòd cachedump:

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

Egzanp nan aksyon:

stats cachedump 1 0

Egzanp pwodiksyon:

ITEM testkey [9 b; 1296857316 s]
END

Kòm pi wo a, SLAB 1 gen yon atik ak kle a "Kle tès." Pou jwenn valè aktyèl la, ou ka itilize "jwenn kle" kòmandman jan sa a:

get testkey

Egzanp pwodiksyon:

VALUE testkey 0 9
test data
END

Anfen, efase yon atik nan kachèt, nan ka sa a, la "testkey" sèvi ak kòmandman sa a:

delete testkey

Egzanp pwodiksyon:

DELETED

reklam


Kòmantè ak konklizyon

Leson patikilye a te montre w kouman enstale Memcached sou sistèm operasyon Ubuntu 20.04 Focal Fossa ou a, enstale bibliyotèk adisyonèl yo ak kijan pou jwenn aksè nan lis kòmand tèminal la.

Pou plis dokiman, pwojè a Github Wiki paj eksplike plis an detay pou admin sèvè nenpòt espesifikasyon oswa enfòmasyon yo bezwen.

Leave a Comment