Redis w DirectAdmin — cache aplikacji
Redis to in-memory key-value store, wykorzystywany jako cache (przyspiesza WordPress 2-5x). W IQHost dostępny w HS25+. Konfiguracja, integracja z WordPress.
Redis to in-memory data store — używany jako cache (pamiętanie wyników kosztownych operacji). Drastycznie przyspiesza WordPress / Laravel / Drupal — często 2-5x szybsza strona.
W IQHost Redis dostępny w pakietach HS25+.
Co zyskasz
- Włączysz Redis dla swojej domeny.
- Skonfigurujesz WordPress z Redis Object Cache.
- Zobaczysz drastyczne przyspieszenie strony.
- Zdiagnozujesz problemy Redis.
Wymagania wstępne
- Pakiet HS25+ (Redis nie ma w HS1 / HS5).
- Aplikacja wspierająca Redis (WordPress + plugin, Laravel native).
Wskazówka
Redis vs Memcached vs OPcache:
- OPcache — cache PHP bytecode (auto, każdy pakiet)
- Redis — cache obiektów PHP (queries, data) — najszybszy, HS25+
- Memcached — alternatywa Redis, mniej features
Krok 1: Otwórz „Zarządzanie REDIS”
W DirectAdmin: Dodatkowe funkcje → Zarządzanie REDIS (albo wpisz „Redis” w wyszukiwarkę DirectAdmin).
Krok 2: Dane połączenia
Przy pierwszym wejściu na tę stronę uruchamiamy Twoją własną instancję Redis — osobną dla konta, z własnym portem i hasłem. Na stronie zobaczysz trzy pola z przyciskiem Kopiuj:
- Host — zawsze
127.0.0.1,- Port — indywidualny dla Twojego konta (np.
7523), nie domyślny6379,- Hasło — wymagane przy każdym połączeniu.
Instancja ma 64 MB pamięci — dla cache'u obiektów typowej strony to z zapasem. Gdy się zapełni, Redis nie przyjmuje nowych wpisów (starych sam nie usuwa), dlatego w WordPressie ustaw czas życia wpisów — patrz niżej, problem nr 4.
Dla zaawansowanych: ta sama instancja jest dostępna także przez gniazdo
/home/LOGIN/.redis/redis.sock(LOGIN = nazwa użytkownika DirectAdmin) — hasło obowiązuje tak samo.
Krok 3: Sprawdź połączenie (SSH, od HS5)
# port i hasło wpisz z panelu „Zarządzanie REDIS” redis-cli -h 127.0.0.1 -p 7523 -a 'TWOJE_HASLO' ping # PONG
Krok 4: Włącz Redis w WordPress
Wtyczka Redis Object Cache:
- WP-admin → Wtyczki → Dodaj nową → wyszukaj „Redis Object Cache” (autor: Till Krüss)
- Zainstaluj + włącz
- Najpierw wpisz dane połączenia do
wp-config.php(nad linią „That's all, stop editing!”):define('WP_REDIS_HOST', '127.0.0.1'); define('WP_REDIS_PORT', 7523); // port z panelu „Zarządzanie REDIS” define('WP_REDIS_PASSWORD', 'TWOJE_HASLO'); // hasło z panelu define('WP_REDIS_DATABASE', 0);
- Ustawienia → Redis → Enable Object Cache
Wtyczka sama nie znajdzie Twojej instancji — ma indywidualny port i hasło, więc bez tych linii pokaże „Not connected”. Po ich dodaniu status zmieni się na Connected. ✅
Konfiguracja per framework
We wszystkich przykładach port i hasło bierzesz z panelu Zarządzanie REDIS.
Laravel
.env:
CACHE_STORE=redis
SESSION_DRIVER=redis
QUEUE_CONNECTION=redis
REDIS_HOST=127.0.0.1
REDIS_PORT=7523
REDIS_PASSWORD=TWOJE_HASLO
Drupal
Moduł Redis + w settings.php:
$settings['redis.connection']['interface'] = 'PhpRedis';
$settings['redis.connection']['host'] = '127.0.0.1';
$settings['redis.connection']['port'] = 7523;
$settings['redis.connection']['password'] = 'TWOJE_HASLO';
$settings['cache']['default'] = 'cache.backend.redis';
Symfony
config/packages/cache.yaml:
framework:
cache:
app: cache.adapter.redis
default_redis_provider: 'redis://TWOJE_HASLO@127.0.0.1:7523'
Korzyści wydajnościowe
Przykładowe czasy generowania strony głównej WordPressa (orientacyjnie — realny zysk zależy od strony):
| Setup | Time |
|---|---|
| Bez cache | 1.2s |
| OPcache only | 0.8s |
| OPcache + Redis | 0.25s |
| OPcache + Redis + LSCache | 0.05s |
Redis najbardziej pomaga gdy aplikacja robi wiele DB queries (typowy WP). Eliminuje ich powtórzenia.
Monitoring Redis
SSH (od HS5) — port i hasło z panelu Zarządzanie REDIS:
redis-cli -h 127.0.0.1 -p 7523 -a 'TWOJE_HASLO' info memory
# used_memory_human — ile z 64 MB jest zajęte
redis-cli -h 127.0.0.1 -p 7523 -a 'TWOJE_HASLO' info stats
# keyspace_hits / keyspace_misses — trafienia i chybienia cache
redis-cli -h 127.0.0.1 -p 7523 -a 'TWOJE_HASLO' monitor
# podgląd komend na żywo (Ctrl+C kończy)
Strona Zarządzanie REDIS pokazuje dane połączenia i limit pamięci — statystyk użycia tam nie ma.
Plugin Redis Object Cache (WP): Statystyki → Hit/Miss ratio. Powyżej 90% hit = doskonale.
Najczęstsze problemy
1. „Redis nie odpowiada”
- Wejdź ponownie na stronę Zarządzanie REDIS — przy każdym wejściu sprawdzamy i w razie potrzeby uruchamiamy Twoją instancję.
- SSH (od HS5):
redis-cli -h 127.0.0.1 -p PORT -a 'HASLO' pingpowinno zwrócićPONG. - Jeśli strona wtyczki pokazuje błąd uruchomienia — napisz zgłoszenie.
2. „WordPress plugin pokazuje 'Not connected'"
- Host musi być
127.0.0.1, a port i hasło — takie jak w panelu Zarządzanie REDIS (domyślny6379nie zadziała) - Plugin może wymagać PHP
redisextension — patrz Rozszerzenia PHP
3. „Redis działa, ale strona nadal wolna"
- Sprawdź hit ratio (jeśli <80% → cache nie korzysta dobrze)
- Może problem nie w cache — DB queries, slow plugin
- Użyj X-Ray (patrz X-Ray)
4. „Redis pełny — błędy «OOM command not allowed»”
Limit instancji to 64 MB i nie zmienisz go samodzielnie. Gdy pamięć się zapełni, Redis odrzuca nowe zapisy. Co zrobić:
- w WordPressie dodaj do
wp-config.phpczas życia wpisów, np.define('WP_REDIS_MAXTTL', 86400);(doba), i wyczyść cache przyciskiem Flush Cache w ustawieniach wtyczki, - w innych aplikacjach ustaw TTL dla kluczy cache,
- jeśli 64 MB to za mało dla Twojej aplikacji — napisz zgłoszenie.
5. „Czy restart Redis kasuje cache?"
Zwykle nie: instancja co jakiś czas zapisuje migawkę danych w ~/.redis/db/ i po restarcie ją wczytuje. Wpisy dodane tuż przed restartem mogą jednak przepaść, a po wyczyszczeniu cache (np. Flush Cache) strona przez kilka minut działa wolniej, dopóki cache się nie zapełni. Plik migawki liczy się do miejsca na koncie (najwyżej kilkadziesiąt MB).
Traktuj Redis jako cache, a nie miejsce przechowywania danych — aplikacja musi działać także po jego wyczyszczeniu.
6. „Redis vs Memcached"
- Redis — więcej features (publish/subscribe, transactions, persistence), bardziej popularne
- Memcached — prostszy, czasem szybszy dla pure cache
W 2026 — wybieraj Redis. Memcached starsze, mniej rozwijane.
7. „Redis dla kilku aplikacji — czy oddzielić?"
Redis ma 16 baz (database 0-15). W aplikacji 1: WP_REDIS_DATABASE = 0, w aplikacji 2: 1. Izolacja kluczy.
Słowniczek
- Redis — Remote Dictionary Server, in-memory key-value store.
- Object cache — cachowanie wyników kosztownych operacji (DB queries).
- Hit ratio — % zapytań trafiających w cache (vs miss = brak w cache → DB).
- Eviction policy — co zrobić gdy cache pełny (LRU, LFU, random).
Related
Feedback
Czy ten artykuł pomógł?
