Memcached je vysoce výkonný open-source cache server pro snadné ukládání a získávání dat z hlavní paměti. Memcached se často používá ve spojení s webovými aplikacemi ke zlepšení jejich výkonu ověřením mezipaměti objektů. Ve standardní konfiguraci naslouchá Memcached na portu 11211 / TCP a (až do verze 1.5.5 včetně) navíc na portu 11211 / UDP.
Zde se naučíme kroky k instalaci a konfiguraci serveru Memcached na CentOS 8.
Instalace MemCached na CentOS 8 Linux
Pokud provozujete WordPress nebo jakýkoli jiný web na Cpanel s CentOS, pak instalace Memcache na váš server zlepší celkový výkon webu.
Požadavky :
- Přístup uživatele root.
- Server CentOS 6/7/8
- funkční připojení k internetu.
1. Nainstalujte server Memcached
Na CentOS 8 nebo v předchozích verzích CentOS 7 &6 nepotřebujeme instalovat žádné úložiště třetích stran. Je k dispozici na oficiálním. Proto stačí přistoupit na váš serverový terminál a spustit příkaz:
yum install memcached libmemcached
Ve výše uvedeném příkazu instalujeme dva balíčky, jeden je systém mezipaměti a druhý je knihovna, která obsahuje sadu nástrojů pro správu nainstalovaného serveru Memcached.
2. Upravit konfigurační soubor
Po úspěšné instalaci upravte konfiguraci, abyste zvýšili nebo snížili velikost akumulace mezipaměti. Ve výchozím nastavení bude 64 MB a v závislosti na vašich požadavcích, jako je 256 MB, 512 MB nebo 1 GB.
vi /etc/sysconfig/memcached
Najdete následující řádky nebo je přidejte.
PORT="11211" USER="memcached" MAXCONN="1024" CACHESIZE="64" OPTIONS="-l 127.0.0.1,::1"
Chcete-li soubor upravit, stiskněte „INSERT ” na klávesnici.
port=Je to výchozí číslo portu, které bude používat Memcache.
maxconn=Maximální připojení pro tento systém mezipaměti
Velikost mezipaměti=Množství vyrovnávací paměti vygenerované před dosažením prahové hodnoty
Options=Pro deklaraci dalších parametrů pro cache, které použijeme v dalším kroku.
3. Svázat Memcache s konkrétní IP adresou (volitelné)
Pokud Memcache není správně zabezpečená, může se stát hostitelem pro zahájení útoků DDOS. To je důvod, proč společnost Digital Ocean trvale zablokovala číslo portu 112211 na svých serverech.
Proto předpokládám, že používáte Memcache na serveru ve stejném serveru nebo síti, ve které jsou jiné aplikace, jako je webový server.
Poznámka :Nyní je výchozí vazba serveru na localhost, v případě, že ne, proveďte to ručně.
Například , na Panelu nebo hosting VPS, kde byl jeden server používán k hostování serveru Memcache i Apache, poté jednoduše přidejte následující řádek, který server sváže, aby naslouchal pouze localhost, jako hodnotu OPTIONS:
-l 127.0.0.1
takže to bude takto:
OPTIONS="-l 127.0.0.1"
(volitelné ) V případě, že chcete přistupovat k systému mezipaměti v rámci stejné privátní sítě, navažte se na rozsah lokální IP adresy. Předpokládejme například, že adresa cache serveru je 10.0.0.14
a poté klienti na 10.0.0.x.
by se s ním mohl pouze spojit.
Navíc, chcete-li jej svázat pouze s místním rozhraním zpětné smyčky a odmítnout všechna ostatní vzdálená připojení, přidejte také:
-U 0
Kompletní syntaxe tedy bude vypadat takto:
OPTIONS="-l 127.0.0.1 -U 0"
Pro uložení konfiguračního souboru stiskněte ESC
klíč a typ :wq
a stiskněte tlačítko Enter.
4. Povolit a spustit službu
Konfigurace je hotová, nyní povolíme server Memcache při bootování a spustíme jej. Aby to mohlo začít ukládat věci do mezipaměti.
systemctl enable memcached
systemctl start memcached
U předchozích verzí, jako je CentOS 6/5, použijte příkaz service:
service memcached enable
service memcached start
V případě, že chcete přestat:
service memcached stop
Pro restart/start/stop můžete také použít:
etc/init.d/memcached restart
5. Zkontrolujte stav běhu memcached
Chcete-li potvrdit, že služba běží bez jakékoli chyby, zkontrolujte stav tohoto systému mezipaměti.
sudo systemctl status memcached
nebo
service memcached status
6. Potvrďte, že mezipaměť naslouchá místnímu portu
Zde používáme nástroj ke kontrole, zda je localhost správně uveden na 11211, výsledkem budou všechny konfigurační hodnoty:
memcached-tool 127.0.0.1:11211 stats
7. Povolte službu mezipaměti prostřednictvím brány firewall
Ve výchozím nastavení není servisní port na seznamu povolených ve firewallu, abychom se mohli připojit mimo klientský požadavek, takže jej musíme povolit.
V systému CentOS 8 je výchozí službou brány firewall FirewallD:
sudo firewall-cmd –zone=memcached –add-port=11211/tcp –permanent
Pro starší operační systém používající pouze tabulky IP použijte tuto:
iptables -A INPUT -i eth0 -p tcp --dport 11211-j ACCEPT
8. Nainstalujte rozšíření PHP Memcache
Náš mezipaměťový server je tedy v provozu, ale abychom jej mohli používat s PHP, aby mohl ukládat do mezipaměti databázi PHP aplikací, jako je WordPress, Joomla atd. Musíme pro něj povolit rozšíření.
dnf install php php-pecl-memcache
Výše uvedený příkaz nainstaluje modul, pokud se však zobrazí chyba:
No match for argument: php-pecl-memcache Error: Unable to find a match
To znamená, že balíček není k dispozici v oficiálním úložišti, takže místo přidání dalšího repozitáře, abyste měli nástroje k dispozici, jej můžete sestavit pomocí PECL.
dnf install zlib zlib-devel make
dnf install php php-devel php-pear
Nakonec spusťte:
pecl install memcache
9. Povolte rozšíření=memcache.so
PHP modul pro cache systém je nyní na našem serveru, je čas jej přidat do souboru php.ini. Místo otevírání a úprav je zde zkratka. Pomocí tohoto jediného příkazu přidejte rozšíření jako další soubor .ini do adresáře rozšíření php.d.
echo "extension=memcache.so" >> /etc/php.d/memcache.ini
Restartujte Apache
#Na CentOS 8 nebo 7
systemctl restart httpd
#Pokud používáte CentOS 6/5
service httpd restart
10. Zkontrolujte, zda je podpora povolena nebo ne
Pro potvrzení podpory rozšíření PHP spusťte následující příkaz:
php -i | grep memcach
Výstup: