Memcached je vysoko výkonný systém na ukladanie objektov do pamäte, vyvíjaný najmä pre zvýšenie škáľovateľnosti dynamických webových aplikácii so zámerom znížiť záťaž na databázu a súborový systém. Jeho výkon sa najlepšie prejavuje pri veľkých počtoch súbežných načítani objektu vďaka flexibilnému systému prístupu k pamäti .
Vo väčšine prípadov sú prístupy k disku najčastejšim miestom, kde dochádza k spomaleniu aplikácie najmä pokiaľ sa jedná o aplikáciu náročnejšiu na SQL databázu.
Po dokončeni krokov v návode bude na Vašom servery ukladané sessions do memcache a memcache backend bude dostupný pre cachovanie v rámci Vašej aplikácie.
Návod na inštaláciu Memcached na virtuálny server
Tip: Pred použitím návodu odporúčame znalosť a základný prehľad o inštalácií balíkov na server a upravovanie konfigurácie cez konzolu.
1. Aktualiziácia repozitárov a inštalácia aktualizácii balíčkov
sudo apt-get update -y apt-get upgrade -y
Pre operačný systém Ubuntu 18.04 LTS sú balíčky v repozitároch a je ich možné nainštalovať pomocou
2. Inštalácia balíčkov pre Memcached
Pre operačný systém Ubuntu 18.04 LTS sú balíčky v repozitároch a je ich možné nainštalovať pomocou
sudo apt-get install memcached libmemcached-tools -y
3. Po inštalácii je možné Memcached spustiť a pridať do automatického spúšťania po štarte systému
sudo systemctl start memcached
sudo systemctl enable memcached
4. Stav Memcached môžete skontrolovať príkazom
systemctl status memcached
5. Zmena nastavení
Konfigurácia Memcached sa nachádza v súbore /etc/memcached.conf
v ktorom môžete upraviť parametre podľa vašich potrieb. Medzi najčastejšie úpravy patrí.
Zmena štandardného portu 11211 na iný
-p 11211
IP adresa na ktorej je Memcached prevádzkovaný. Nastavovať inú ako lokálnu (127.0.0.1) odporúčame len v prípade, že k Memcached je nutné pristupovať z iného servera
-l 192.168.0.10
Definuje maximálnu veľkosť pamäte, ktorú má Memcached k dispozícii
-m 256
Po upravení a uložení konfigurácie vo vašom obľúbenom editore je nutné Memcached reštartovať, aby sa nové nastavenia prejavili
sudo systemctl restart memcached
Inštalácia Apache a PHP a ich konfigurácia s Memcached
Pokiaľ chcete používať Memcached v kombinácii s webovým serverom Apache a PHP je nutné preň nainštalovať modul.
Tip: Ubuntu 18.04 LTS používa PHP vo verzii 7.2. V prípade, že chcete mať inú verziu PHP napríklad z repozitára tretej strany, tak musí takýto modul obsahovať.
1. Návod na inštaláciu Apache2, PHP a modulu Memcached
sudo apt-get install apache2 php7.2 libapache2-mod-php7.2 php-memcached php7.2-cli -y
2. Reštart služieb
sudo systemctl restart apache2
3. Kontrola nastavenia
Funkčnosť je možné preveriť pomocou funkcie phpinfo
Vytvorte súbor phpinfo.php
sudo nano /var/www/html/phpinfo.php
pridajte
<?php
(
phpinfo);
Uložte súbor a otvorte webový prehliadač na adrese http://ip-vasho-servera/phpinfo.php
– na webe vyhľadajte časť s memcached
Ukladanie sedení (sessions) do Memcached
V štandardnej konfigurácii PHP ukladá sedenia do súborov, čo pri weboch s vysokou návštevnosťou môže byť problém a je vhodné používať namiesto nich Memcached.
S súbore /etc/php/7.2/apache2/php.ini
zmente
session.save_handler = files
na
session.save_handler = memcached
Reštartnite webový server Apache2 príkazom
sudo systemctl restart apache2
Zmena sa prejaví aj na výpise funkcie phpinfo
(viď. vyššie).