Optimizējiet datu bāzes veiktspēju, izmantojot Memcached serveri ar savām PHP un Python programmām
Ja kādreiz esat izjutis sāpes, ko rada liela datubāzes slodze, kas izraisa jūsu tīmekļa lietotņu palēnināšanos, un jautājāt: “Vai ir kāds veids, kā samazināt DB vaicājumu izraisīto latentumu?”, tad atbilde uz šo jautājumu ir liela jā. Atmiņā ir izveidots draudzīgs apkārtnes atmiņas kešatmiņas dēmons, lai atrisinātu visas jūsu problēmas! DB saglabāšana kešatmiņā ir viena no vienkāršākajām metodēm, lai atvieglotu DB slodzi un paātrinātu dinamiskās tīmekļa lietojumprogrammas.
Memcached sevi definē kā augstas veiktspējas sadalītas atmiņas objektu kešatmiņas sistēmu, kas pēc būtības ir vispārēja, taču sākotnēji paredzēta izmantošanai dinamisku tīmekļa lietojumprogrammu paātrināšanai, mazinot datu bāzes slodzi. Izstrādāja Breds Ficpatriks savai vietnei LiveJournal 2003. gadā.
Šajā rakstā mēs apskatīsim, kā instalēt un konfigurēt Memcached Ubuntu 20.04, un aplūkosim tā valodai raksturīgos klientus.
Priekšnoteikumi
Sistēma, kas instalēta ar Ubuntu 20.04 ar lietotāju ar administratora tiesībām, tas ir sudo
lietotājs.
Uzstādīšana
Memcached ir pieejams oficiālajā Ubuntu 20.04 repozitorijā, papildus Memcached mēs arī instalēsim CLI rīku, kas pazīstams kā libmemcached-tools
lai pārvaldītu Memcached. Vienkārši palaidiet šo komandu, lai instalētu abus
sudo apt instalējiet memcached libmemcached-tools
Pārbaudiet instalāciju
Kad instalēšana ir pabeigta, Memcached dēmons sāk darboties fonā pats. Lai pārbaudītu instalēšanu, mēs varam izmantot komandu no libmemcached-tools
pakotni, lai iegūtu Memcached servera statistiku. Vai nu skrien
memcstat — serveri localhost
vai
memcstat — serveri 127.0.0.1
The memcstat
komanda parāda strādājošā servera statistiku. Iepriekš minētās komandas rezultātā tiks parādīta zemāk redzamā izvade.
Dažādi statistikas dati, piemēram, darbspējas laiks
sekundēs, versija
un pid
tiks parādīts kā izvade. Tomēr, ja netiek parādīta neviena izvade, iespējams, ka Memcached nedarbojas. Tāpēc, lai palaistu Memcached serveri, ir jāpalaiž šāda komanda.
sudo systemctl start memcached
Lai palaistu Memcached serveri sistēmas startēšanas laikā, izmantojiet šo komandu.
sudo systemctl enable memcached
Memcached konfigurēšana
Ja jūsu memcached ir instalēts pašā vietnes serverī, nav nepieciešams mainīt konfigurācijas failu, jo memcached ir iepriekš konfigurēts darbam ar localhost.
No otras puses, ja esat instalējis Memcached atsevišķā sistēmā, jums būs jāmaina konfigurācija, lai ļautu attālajam serverim piekļūt Memcached serverim.
Attālās piekļuves iestatīšana Memcached serverim
Memcached ir neaizsargāts pret DDoS (Distributed Denial of Service) uzbrukumiem. Nepareizs ugunsmūra noteikums un atvērti UDP porti padarīs jūsu serveri atvērtu un neaizsargātu pret DDoS uzbrukumiem.
Lai mazinātu risku, mēs varam atspējot UDP protokolu Memcached konfigurācijā vai iestatīt ugunsmūri tikai tā, lai atļautu uzticamus serverus.
No kastes Ubuntu tiek piegādāts bez atvērtiem TCP vai UDP portiem. Turklāt ugunsmūra dēmons ufw
(nesarežģīts ugunsmūris) pēc noklusējuma nav iespējots.
Mēs iespējosim ugunsmūri un iestatīsim Memcached konfigurāciju, lai varētu mazināt DDoS ievainojamību.
Pirmkārt, iespējojiet ufw
izpildot šādu komandu:
sudo systemctl iespējot ufw
Pēc tam sāciet ufw
pakalpojumu, izpildot tālāk norādīto komandu:
sudo systemctl start ufw
Kad ugunsmūris darbojas, mēs beidzot varam iestatīt ugunsmūra noteikumus. Pirmkārt, iespējojiet portu 22, lai atļautu SSH savienojumus. SSH ir nepieciešams, lai attālināti piekļūtu vēlamajam serverim.
sudo ufw atļauj 22
Otrkārt, jums jāzina klienta IP adrese, tas ir, tīmekļa lietojumprogrammas resursdators, un servera, tas ir, Memcached servera, IP adrese.
Šajā gadījumā pieņemsim, ka klienta IP ir 192.168.0.4
un Memcached servera IP jābūt 192.168.0.5
vietējā tīklā.
Tātad, lai atļautu attālo piekļuvi atmiņā saglabātajam serverim klienta serverim, palaidiet:
sudo ufw atļaut no 192.168.0.4 uz jebkuru portu 11211
Nomainiet 192.168.0.4
ar vēlamo klienta IP adresi.
Pēc tam rediģējiet Memcached konfigurācijas failu, kas atrodas vietnē /etc/memcached.conf
skrienot nano
komandu.
sudo nano /etc/memcached.conf
The memcached.conf
konfigurācijas fails tiks atvērts ar nano redaktoru, meklējiet -l 127.0.0.1
līniju konfigurācijā un nomainiet 127.0.0.1
ar jūsu Memcached servera IP vai šajā gadījumā 192.168.0.5
.
Pēc nomaiņas nospiediet ctrl+o
lai rakstītu konfigurācijas failā un nospiediet taustiņu Enter, nospiediet ctrl+x
lai izietu no nano.
Restartējiet Memcached serveri un ufw
ugunsmūri, izpildot tālāk norādīto komandu.
sudo systemctl restartējiet memcached ufw
Tagad mēs esam pabeiguši Memcached servera instalēšanu un konfigurēšanu Ubuntu 20.04.
Savienojuma izveide ar Memcached serveri
Lai izmantotu Memcached serveri, jums būs jāinstalē valodai raksturīgs klients. Par laimi, Memcached atbalsta daudzas populāras valodas.
Tātad, redzēsim, kā instalēt php
un pitons
Memcached klients.
PHP ir vispopulārākā servera puses skriptu valoda, un tīmekļa izstrādātāji galvenokārt izmanto Memcached, lai uzlabotu PHP darbināmo tīmekļa lietotņu servera veiktspēju.
Lai instalētu memcached atbalstu php, palaist:
sudo apt instalēt php-memcached
Arī Python ir vairākas bibliotēkas, kas var darboties un mijiedarboties ar Memcached serveri, piemēram, pymemcached
vai python-memcached
.
Varat instalēt memcached for python, izpildot šādas pip komandas:
pip instalēt pymemcache
pip instalēt python-memcached
Noslēgumā mēs esam apskatījuši Ubuntu 20.04 Memcached instalēšanu, konfigurēšanu un dažus valodai raksturīgus klientus.
Lai uzzinātu precīzāku un modernāku Memcached lietojumu, apskatiet vietni Memcached Wiki.