Hur man installerar Memcached på Ubuntu 20.04 LTS

Optimera din databasprestanda genom att använda Memcached-servern med dina PHP- och Python-appar

Om du någonsin har känt smärtan av hög databasbelastning som orsakar nedgångarna i dina webbappar och undrat "Finns det ett sätt att minska latensen som orsakas av DB-frågor?", då är svaret på den frågan ett stort ja. Memcached en vänlig stadsdelminnescache-demon är här för att lösa alla dina problem! Cachning av DB är en av de enklaste metoderna för att lindra DB-belastning och snabba upp de dynamiska webbapplikationerna.

Memcached definierar sig själv som ett högpresterande, distribuerat minnesobjektcachningssystem, generiskt till sin natur, men ursprungligen avsett att användas för att påskynda dynamiska webbapplikationer genom att minska databasbelastningen. Utvecklad av Brad Fitzpatrick för sin webbplats LiveJournal 2003.

I den här artikeln kommer vi att titta på hur man installerar och konfigurerar Memcached i Ubuntu 20.04 och tittar på dess språkspecifika klienter.

Förutsättningar

Ett system installerat med Ubuntu 20.04 med en användare med administrativa rättigheter, dvs sudo användare.

Installation

Memcached är tillgängligt på det officiella Ubuntu 20.04-förrådet, förutom Memcached kommer vi också att installera ett CLI-verktyg känt som libmemcached-verktyg för att hantera Memcached. Kör bara följande kommando för att installera båda

sudo apt installera memcached libmemcached-tools

Verifiera installationen

När installationen är klar startar Memcached-demonen av sig själv i bakgrunden. För att verifiera installationen kan vi använda ett kommando från libmemcached-verktyg paket för att få Memcached serverstatistik. Antingen spring

memcstat --servers localhost

eller

memcstat --servrar 127.0.0.1

De memcstat kommandot visar statistiken för den körande servern. Kommandot ovan kommer att resultera i utdata som visas nedan.

Olika statistik som t.ex upptid inom sekunder, version och pid kommer att visas som utdata. Men om ingen utdata visas är det möjligt att Memcached inte körs. Därför måste du köra följande kommando för att starta Memcached-servern.

sudo systemctl starta memcachad

Använd följande kommando för att köra Memcached-servern vid systemstart.

sudo systemctl aktivera memcached

Konfigurerar Memcached

Om du har din memcached installerad på själva webbservern, behöver du inte ändra konfigurationsfilen eftersom memcached är förkonfigurerat för att fungera med localhost.

Å andra sidan, om du har installerat Memcached på ett separat system måste du ändra konfigurationen för att tillåta fjärrservern åtkomst till Memcached-servern.

Konfigurera fjärråtkomst för Memcached Server

Memcached är sårbart för DDoS-attacker (Distributed Denial of Service). Felaktig brandväggsregel och öppna UDP-portar kommer att lämna din server öppen och sårbar för DDoS-attacker.

För att minska risken kan vi antingen inaktivera UDP-protokollet för Memcached i konfigurationen eller konfigurera en brandvägg endast för att tillåta betrodda servrar.

Ur förpackningen levereras Ubuntu utan TCP- eller UDP-portar öppna. Dessutom brandväggsdemonen ufw (okomplicerad brandvägg) är inte aktiverat som standard.

Vi kommer att aktivera brandväggen och ställa in Memcached-konfigurationen så att vi kan mildra DDoS-sårbarheten.

Aktivera först ufw genom att köra följande kommando:

sudo systemctl aktivera ufw

Starta sedan ufw tjänst genom att köra kommandot nedan:

sudo systemctl starta ufw

Med brandväggen igång kan vi äntligen ställa in brandväggsreglerna. Aktivera först port 22 för att tillåta SSH-anslutningar. SSH behövs för att fjärråtkomst till önskad server.

sudo ufw tillåter 22

För det andra måste du känna till IP-adressen för klienten, det vill säga webbapplikationsvärden och IP-adressen för servern, det vill säga den Memcachade servern.

Låt oss i detta fall anta att klientens IP är 192.168.0.4 och Memcached server IP ska vara 192.168.0.5 på ett lokalt nätverk.

Så för att tillåta fjärråtkomst av memcachad server till klientserver, kör:

sudo ufw tillåter från 192.168.0.4 till valfri port 11211

Ersätt 192.168.0.4 med din önskade klient-IP-adress.

Redigera sedan Memcached-konfigurationsfilen som finns på /etc/memcached.conf genom att springa nano kommando.

sudo nano /etc/memcached.conf

De memcached.conf konfigurationsfilen öppnas med nanoredigeraren, leta efter -l 127.0.0.1 rad i konfigurationen och byt ut 127.0.0.1 med din Memcached Server IP eller i det här fallet 192.168.0.5.

Efter byte av press ctrl+o för att skriva till konfigurationsfilen och tryck på enter, tryck ctrl+x för att avsluta nano.

Starta om den Memcachade servern och ufw brandvägg genom att köra kommandot nedan.

sudo systemctl starta om memcached ufw

Nu är vi klara med installation och konfiguration av Memcached server på Ubuntu 20.04.

Ansluter till Memcached Server

För att använda Memcached-servern måste du installera en språkspecifik klient. Lyckligtvis har Memcached stöd för många populära språk.

Låt oss därför se hur man installerar php och pytonorm klient för Memcached.

PHP är det mest populära skriptspråket på serversidan och Memcached används mest av webbutvecklare för att förbättra serverprestanda för webbappar som drivs av PHP.

För att installera memcached support i php, springa:

sudo apt installera php-memcached

Python har också flera bibliotek som kan fungera och interagera med Memcached server som t.ex pymemcachad eller python-memcachad.

Du kan installera memcached för python genom att köra följande pip-kommandon:

pip installera pymemcache
pip installera python-memcached

Sammanfattningsvis har vi tittat på installation, konfiguration och några språkspecifika klienter av Memcached i Ubuntu 20.04.

Ta en titt på Memcached Wiki om du vill veta mer om mer avancerad och avancerad användning av Memcached.