Upraveno 6 prosince, 2023 00:23
Pokud provozujete web na WordPressu např. formou vlastního VPS, možná jste již slyšeli o objektové cache. Konec konců, samotný WordPress Vás na její používání bude upozorňovat v sekci pro zdraví webu. Objektová cache v WordPressu, například pomocí Redis, je mocný nástroj pro optimalizaci výkonu a zrychlení načítání webových stránek. Instalace Redis na Ubuntu serveru Není výrazně složitá. Pojďme se podívat, jak na to.
Instalace Redis na Ubuntu serveru
Objektová cache
Pokud návštěvník načte stránku ve WordPressu, systém musí provést mnoho operací, jako je např. získávání dat z databáze, generování obsahu a vytváření HTML stránky. Tento proces může být časově náročný a může zpomalovat načítání stránky.
Zde přichází na řadu objektová cache. Jednoduše řečeno, cache je paměťové úložiště, které ukládá výsledky často používaných operací. Když návštěvník požádá o načtení stránky, WordPress nejprve zkontroluje, zda je výsledek operace uložen v cache.
Použití Redisu jako objektové cache má výhodu, že Redis je rychlá a škálovatelná databáze v paměti. Redis ukládá data ve formátu klíč-hodnota, což zajišťuje rychlé získávání a ukládání dat.
Když je výsledek operace uložen v Redisu, WordPress jej načte přímo z cache místo provádění celé operace znovu. To výrazně zrychluje načítání stránky a snižuje zátěž na server.
Toliko k objektové cache a Redisu na WordPressu (článek bude samostatně také). Nyní se pojďme ale podívat na samotnou instalaci.
Instalace
Nejprve jako vždy aktualizujte seznam dostupných balíčků:
sudo apt update
Ihned poté můžete napsat příkaz pro instalaci Redis:
sudo apt install redis-server
Tento příkaz stáhne a nainstaluje Redis spolu s jeho závislostmi. Nyní budete muset provést důležitou změnu v konfiguraci. Pomocí textového editoru nano tedy otevřete konfigurační soubor Redis:
sudo nano /etc/redis/redis.conf
V souboru redis.conf najděte directivu supervised a změňte její hodnotu z no na systemd.
# If you run Redis from upstart or systemd, Redis can interact with your
# supervision tree. Options:
# supervised no - no supervision interaction
# supervised upstart - signal upstart by putting Redis into SIGSTOP mode
# supervised systemd - signal systemd by writing READY=1 to $NOTIFY_SOCKET
# supervised auto - detect upstart or systemd method based on
# UPSTART_JOB or NOTIFY_SOCKET environment variables
# Note: these supervision methods only signal "process is ready."
# They do not enable continuous liveness pings back to your supervisor.
supervised systemd
Jakmile provedete tuto změnu, novu konfiguraci uložte pomocí klávesové zkratky CTRL + X. Následně změnu potvrďte písmenem Y a stiskem klávesy Enter.
Nyní můžete restartovat službu Redis, aby se dotčená změna konfigurace projevila.
sudo systemctl restart redis.service
Otestujte Redis
Nejprve, pomocí příkazu níže vypište status Redis služby:
sudo systemctl status redis
Jako výstup byste měli obdržet něco podobné níže uvedenému výstupu. Důležitá je pro Vás položka Active: active (running).
redis-server.service - Advanced key-value store
Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2020-04-30 23:26:54 UTC; 4s ago
Docs: http://redis.io/documentation,
man:redis-server(1)
Process: 36552 ExecStart=/usr/bin/redis-server /etc/redis/redis.conf (code=exited, status=0/SUCCESS)
Main PID: 36561 (redis-server)
Tasks: 4 (limit: 2345)
Memory: 1.8M
CGroup: /system.slice/redis-server.service
└─36561 /usr/bin/redis-server 127.0.0.1:6379
Pro otestování se připojte na server pomocí redis-cli:
redis-cli
Nyní můžete vyzkoušet konektivitu za pomocí příkazu ping:
ping
Jako odpověď by Vám měl Redis server vtipně odpovědět slovem PONG. Nyní můžete vyzkoušet nastavit klíče. Napište příkaz:
set test "It's working!"
Jako výstup dostanete “OK“. Nyní zkuste, zda dokážete obdržet hodnotu zpět:
get test
Zde již jako výstup obdržíte předem definovaný text “It’s working!“. Pomocí příkazu “exit” tedy ukončete připojení na Redis a restartujte službu:
sudo systemctl restart redis
Pokud chcete vyzkoušet, zda hodnoty na serveru přetrvávají i po restartu služby, můžete se pro test připojit ještě jednou a získat stejnou hodnotu kterou jste před chvílí zadali zpět.
redis-cli
get test
Redis by Vám jako výstup měl i po předchozím provedeném restartu služby znovu vrátit dříve stanovenou hodnotu “It’s working!“.
Nastavení vazby na localhost
Defaultně by měl být Redis vázaný pouze na localhost. Pokud jste ale Redis instalovali např. podle jiného návodu, můžete mít špatně nastavenou konfiguraci. Pro opravu, nebo alespoň pro kontrolu nastavení Redis otevřete jeho konfigurační soubor:
sudo nano /etc/redis/redis.conf
Najděte řádek níže a ujistěte se, že je před řádkem smazaný znak pro komentář #. Pokud nikoliv, smažte znak #.
bind 127.0.0.1 ::1
Změnu v konfiguračním souboru opět uložte pomocí CTRL+X. Jakmile jste upravili konfigurační soubor, opět restartujte Redis:
sudo systemctl restart redis
Pomocí příkazu netstat proveďte kontrolu:
sudo netstat -lnp | grep redis
Jako správný výstup byste měli obdržet:
tcp 0 0 127.0.0.1:6379 0.0.0.0:* LISTEN 14222/redis-server
tcp6 0 0 ::1:6379 :::* LISTEN 14222/redis-server
Poznámka: příkaz netstat nemusí být na Vašem serveru dostupný. Pokud je tomu tak, musíte nástroj netstat nejprve nainstalovat:
sudo apt install net-tools
Test pomocí netstat výše by Vám měl ukázat, že je Redis server vázaný na pouze na localhost (127.0.0.1). Pokud ve výpisu vidíte jinou IP adresu, proveďte opětovnou kontrolu, zda jste ve správném řádku (bind 127.0.0.1 ::1) smazali znak # a změnu v konfiguraci správně uložili. Poté znovu restartujte Redis.
Instalace Redis na Ubuntu serveru. Závěr
Nyní máte Redis na Ubuntu v provozu a funkční. Jak pomocí Redis zapnout objektovou cache např. ve WordPressu si ukážeme v samostatném článku.
Web je vytvářen s pečlivostí k obsaženým informacím. Snažím se poskytovat kvalitní a užitečný obsah, který ostatním pomáhá, nebo je inspiruje. Pokud jste spokojeni s mou prací a chtěli byste mě podpořit, můžete to udělat prostřednictvím jednoduchých možností.
Byl pro Vás tento článek užitečný?
Klikni na počet hvězd pro hlasování.
Průměrné hodnocení. 0 / 5. Počet hlasování: 0
Zatím nehodnoceno! Buďte první
Je mi líto, že pro Vás nebyl článek užitečný.
Jak mohu vylepšit článek?
Řekněte mi, jak jej mohu zlepšit.
Odebírejte Newsletter
Buďte v obraze! Připojte se k odběru newsletteru a buďte první, kdo získá nejnovější informace přímo do vaší e-mailové schránky. Sledujte aktuality, exkluzivní události a inspirativní obsah, přímo na Vašem e-mailu.