Memcachedin asentaminen Ubuntu 20.04 LTS:ään

Optimoi tietokantasi suorituskyky käyttämällä Memcached-palvelinta PHP- ja Python-sovellustesi kanssa

Jos olet koskaan tuntenut tuskaa korkeasta tietokantakuormituksesta, joka aiheuttaa verkkosovellustesi hidastumiset ja pohtinut "Onko olemassa keinoa vähentää DB-kyselyjen aiheuttamaa latenssia?", vastaus tähän kysymykseen on suuri kyllä. Memcached ystävällinen naapuruston muistivälimuistidaemon on täällä ratkaisemassa kaikki ongelmasi! DB:n välimuisti on yksi yksinkertaisimmista tavoista keventää tietokantakuormitusta ja nopeuttaa dynaamisia verkkosovelluksia.

Memcached määrittelee itsensä korkean suorituskyvyn hajautetun muistin objektivälimuistijärjestelmäksi, joka on luonteeltaan yleinen, mutta alun perin tarkoitettu käytettäväksi dynaamisten verkkosovellusten nopeuttamiseen tietokannan kuormitusta vähentämällä. Kehittänyt Brad Fitzpatrick verkkosivulleen LiveJournal vuonna 2003.

Tässä artikkelissa tarkastellaan, kuinka Memcached asennetaan ja määritetään Ubuntu 20.04:ssä ja tarkastellaan sen kielikohtaisia ​​asiakkaita.

Edellytykset

Järjestelmä, joka on asennettu Ubuntu 20.04:llä ja jolla on järjestelmänvalvojan oikeudet, eli a sudo käyttäjä.

Asennus

Memcached on saatavilla virallisessa Ubuntu 20.04 -varastossa, Memcachedin lisäksi aiomme asentaa myös CLI-työkalun, joka tunnetaan nimellä libmemcached-työkalut hallita Memcachedia. Suorita vain seuraava komento asentaaksesi molemmat

sudo apt install memcached libmemcached-tools

Tarkista asennus

Kun asennus on valmis, Memcached-daemon käynnistyy taustalla itsestään. Asennuksen tarkistamiseksi voimme käyttää komentoa kohteesta libmemcached-työkalut paketti Memcached-palvelimen tilastojen saamiseksi. Joko juokse

memcstat -- palvelimet localhost

tai

memcstat --palvelimet 127.0.0.1

The memcstat komento näyttää käynnissä olevan palvelimen tilastot. Yllä oleva komento johtaa alla näkyvään tulosteeseen.

Erilaisia ​​tilastoja mm käyttöaste sekunneissa, versio ja pid näytetään ulostulona. Jos tulostetta ei kuitenkaan näy, on mahdollista, että Memcached ei ole käynnissä. Siksi sinun on suoritettava seuraava komento käynnistääksesi Memcached-palvelimen.

sudo systemctl start memcached

Voit suorittaa Memcached-palvelimen järjestelmän käynnistyksen yhteydessä käyttämällä seuraavaa komentoa.

sudo systemctl enable memcached

Memcachedin määrittäminen

Jos sinulla on memcached asennettuna itse verkkosivustopalvelimelle, määritystiedostoa ei tarvitse muuttaa, koska memcached on esikonfiguroitu toimimaan localhostin kanssa.

Toisaalta, jos olet asentanut Memcachedin erilliseen järjestelmään, sinun on muutettava asetuksia, jotta etäpalvelin voi käyttää Memcached-palvelinta.

Etäkäytön määrittäminen Memcached-palvelimelle

Memcached on alttiina DDoS (Distributed Denial of Service) -hyökkäyksille. Virheellinen palomuurisääntö ja avoimet UDP-portit jättävät palvelimesi avoimeksi ja alttiiksi DDoS-hyökkäyksille.

Riskin pienentämiseksi voimme joko poistaa UDP-protokollan Memcachedille määrityksessä tai asettaa palomuurin vain sallimaan luotettavia palvelimia.

Pakkauksesta lähtien Ubuntu toimitetaan ilman TCP- tai UDP-portteja. Lisäksi palomuurin demoni ufw (yksinkertaista palomuuria) ei ole oletusarvoisesti käytössä.

Otamme palomuurin käyttöön ja määritämme Memcached-kokoonpanon, jotta voimme lieventää DDoS-haavoittuvuutta.

Ota ensin käyttöön ufw suorittamalla seuraava komento:

sudo systemctl enable ufw

Aloita sitten ufw palvelu suorittamalla alla oleva komento:

sudo systemctl start ufw

Kun palomuuri on käynnissä, voimme vihdoin määrittää palomuurisäännöt. Ota ensin käyttöön portti 22 salliaksesi SSH-yhteydet. SSH:ta tarvitaan halutun palvelimen etäkäyttöön.

sudo ufw salli 22

Toiseksi sinun on tiedettävä asiakkaan IP-osoite, eli verkkosovellusisäntä, ja palvelimen, eli Memcached-palvelimen, IP-osoite.

Tässä tapauksessa oletetaan, että asiakkaan IP on 192.168.0.4 ja Memcached-palvelimen IP-osoite 192.168.0.5 paikallisessa verkossa.

Jos haluat sallia välimuistissa olevan palvelimen etäkäytön asiakaspalvelimelle, suorita:

sudo ufw salli 192.168.0.4:stä mihin tahansa porttiin 11211

Korvata 192.168.0.4 haluamallasi asiakkaan IP-osoitteella.

Muokkaa seuraavaksi Memcached-määritystiedostoa, joka sijaitsee osoitteessa /etc/memcached.conf juoksemalla nano komento.

sudo nano /etc/memcached.conf

The memcached.conf asetustiedosto avautuu nanoeditorilla, etsi -l 127.0.0.1 rivi kokoonpanoon ja vaihda 127.0.0.1 Memcached Server IP:n kanssa tai tässä tapauksessa 192.168.0.5.

Paina vaihdon jälkeen ctrl+o kirjoittaaksesi asetustiedostoon ja painamalla enteriä, paina ctrl+x poistuaksesi nanosta.

Käynnistä Memcached-palvelin uudelleen ja ufw palomuuri suorittamalla alla oleva komento.

sudo systemctl käynnistä memcached ufw uudelleen

Memcached-palvelimen asennus ja asetukset on nyt tehty Ubuntu 20.04:ssä.

Yhdistetään Memcached-palvelimeen

Jotta voit käyttää Memcached-palvelinta, sinun on asennettava kielikohtainen asiakas. Onneksi Memcached tukee monia suosittuja kieliä.

Joten katsotaan kuinka asentaa php ja python asiakas Memcachedille.

PHP on suosituin palvelinpuolen komentosarjakieli, ja web-kehittäjät käyttävät enimmäkseen Memcachedia PHP-pohjaisten verkkosovellusten palvelimen suorituskyvyn parantamiseen.

Jos haluat asentaa memcached-tuen php:hen, juosta:

sudo apt install php-memcached

Pythonilla on myös useita kirjastoja, jotka voivat toimia ja olla vuorovaikutuksessa Memcached-palvelimen kanssa, kuten pymemcached tai python-memcached.

Voit asentaa memcached for pythonin suorittamalla seuraavat pip-komennot:

pip asennus pymemcache
pip asennus python-memcached

Lopuksi olemme tarkastelleet Memcachedin asennusta, konfigurointia ja muutamia kielikohtaisia ​​asiakkaita Ubuntu 20.04:ssä.

Jos haluat tietää enemmän Memcachedin hienovaraisemmasta ja edistyneestä käytöstä, katso Memcached Wiki.