Slik installerer du Memcached på Ubuntu 20.04 LTS

Optimaliser databaseytelsen din ved å bruke Memcached-server med PHP- og Python-appene dine

Hvis du noen gang har følt smerten av høy databasebelastning som forårsaker nedgangen i nettappene dine og lurt på "Er det en måte å redusere ventetiden forårsaket av DB-spørringer på?", så er svaret på det spørsmålet et stort ja. Memcached en vennlig nabolagsminne-cache-demon er her for å løse alle plagene dine! Bufring av DB er en av de enkleste metodene for å redusere DB-belastningen og øke hastigheten på de dynamiske webapplikasjonene.

Memcached definerer seg selv som høyytelses distribuert minneobjektbufringssystem, generisk av natur, men opprinnelig ment for bruk for å øke hastigheten på dynamiske webapplikasjoner ved å lindre databasebelastning. Utviklet av Brad Fitzpatrick for nettstedet hans LiveJournal i 2003.

I denne artikkelen vil vi se på hvordan du installerer og konfigurerer Memcached i Ubuntu 20.04 og ser på språkspesifikke klienter.

Forutsetninger

Et system installert med Ubuntu 20.04 med en bruker med administrative rettigheter, det vil si en sudo bruker.

Installasjon

Memcached er tilgjengelig på det offisielle Ubuntu 20.04-depotet, i tillegg til Memcached skal vi også installere et CLI-verktøy kjent som libmemcached-verktøy å administrere Memcached. Bare kjør følgende kommando for å installere begge

sudo apt installer memcached libmemcached-tools

Bekreft installasjonen

Etter at installasjonen er fullført, starter Memcached daemon i bakgrunnen av seg selv. For å bekrefte installasjonen kan vi bruke en kommando fra libmemcached-verktøy pakke for å få Memcached serverstatistikk. Enten løp

memcstat --servers localhost

eller

memcstat --servere 127.0.0.1

De memcstat kommandoen viser statistikken for kjørende server. Kommandoen ovenfor vil resultere i utdata vist nedenfor.

Ulike statistikker som f.eks oppetid på sekunder, versjon og pid vil vises som utdata. Men hvis ingen utdata vises, er det mulig at Memcached ikke kjører. Derfor må du kjøre følgende kommando for å starte Memcached-serveren.

sudo systemctl start memcached

For å kjøre Memcached server ved systemoppstart, bruk følgende kommando.

sudo systemctl aktiver memcached

Konfigurerer Memcached

Hvis du har din memcached installert på selve nettsideserveren, er det ikke nødvendig å endre konfigurasjonsfilen da memcached er forhåndskonfigurert til å fungere med localhost.

På den annen side, hvis du har installert Memcached på et eget system, må du endre konfigurasjonen for å gi den eksterne serveren tilgang til Memcached-serveren.

Sette opp ekstern tilgang for Memcached Server

Memcached er sårbar for DDoS-angrep (Distributed Denial of Service). Feil brannmurregel og åpne UDP-porter vil gjøre serveren din åpen og sårbar for DDoS-angrep.

For å redusere risikoen kan vi enten deaktivere UDP-protokollen for Memcached i konfigurasjonen eller sette opp brannmur bare for å tillate pålitelige servere.

Ut av esken, Ubuntu leveres uten TCP- eller UDP-porter åpne. Videre brannmurdemonen ufw (ukomplisert brannmur) er ikke aktivert som standard.

Vi skal aktivere brannmuren og sette opp Memcached-konfigurasjonen slik at vi kan redusere DDoS-sårbarheten.

Først må du aktivere ufw ved å kjøre følgende kommando:

sudo systemctl aktiver ufw

Start deretter ufw tjeneste ved å kjøre kommandoen nedenfor:

sudo systemctl start ufw

Når brannmuren kjører, kan vi endelig sette opp brannmurreglene. Først, aktiver port 22 for å tillate SSH-tilkoblinger. SSH er nødvendig for å få ekstern tilgang til ønsket server.

sudo ufw tillat 22

For det andre må du vite IP-adressen til klienten, det vil si web-applikasjonsverten og IP-adressen til serveren, det vil si den Memcached-serveren.

I dette tilfellet, la oss anta at klientens IP er 192.168.0.4 og Memcached server IP skal være 192.168.0.5 på et lokalt nettverk.

Så for å tillate ekstern tilgang fra memcached server til klientserver, kjør:

sudo ufw tillat fra 192.168.0.4 til hvilken som helst port 11211

Bytt ut 192.168.0.4 med ønsket klient-IP-adresse.

Deretter redigerer du Memcached-konfigurasjonsfilen som ligger på /etc/memcached.conf ved å løpe nano kommando.

sudo nano /etc/memcached.conf

De memcached.conf konfigurasjonsfilen åpnes med nano-editoren, se etter -l 127.0.0.1 linje i konfigurasjonen og erstatt 127.0.0.1 med din Memcached Server IP eller i dette tilfellet 192.168.0.5.

Etter å ha skiftet trykk ctrl+o for å skrive til konfigurasjonsfilen og trykke enter, trykk ctrl+x for å avslutte nano.

Start Memcached-serveren på nytt og ufw brannmur ved å kjøre kommandoen nedenfor.

sudo systemctl restart memcached ufw

Nå er vi ferdige med installasjon og konfigurasjon av Memcached server på Ubuntu 20.04.

Kobler til Memcached Server

For å bruke Memcached server, må du installere en språkspesifikk klient. Heldigvis har Memcached støtte for mange populære språk.

La oss derfor se hvordan du installerer php og python klient for Memcached.

PHP er det mest populære skriptspråket på serversiden, og Memcached brukes mest av webutviklere for å forbedre serverytelsen til nettapper drevet av PHP.

For å installere memcached-støtte i php, løpe:

sudo apt installer php-memcached

Python har også flere biblioteker som kan fungere og samhandle med Memcached server som f.eks pymemcached eller python-memcached.

Du kan installere memcached for python ved å kjøre følgende pip-kommandoer:

pip installer pymemcache
pip installer python-memcached

Avslutningsvis har vi sett på installasjon, konfigurasjon og få språkspesifikke klienter til Memcached i Ubuntu 20.04.

For å finne ut mer finurlig og avansert bruk av Memcached, ta en titt på Memcached Wiki.