Znamená to prakticky, že se mi zálohují každých 60 sekund?
NE . Redis provede uložení na pozadí po 60 sekundách, pokud bylo změněno alespoň 10 000 klíčů . Jinak neprovede ukládání na pozadí.
Způsobí použití appendonly on a appendfsync everysec snížení výkonu? Zasáhne to CPU? Zápis je na vysoké straně.
Záleží na mnoha věcech, např. výkon disku (SSD VS HDD), zátěž při zápisu/čtení (QPS), datový model a tak dále. Potřebujete provést benchmark s vašimi vlastními daty ve vašem konkrétním prostředí.
Jakmile restartuji server redis s těmito novými nastaveními, stále ztratím posledních 60 sekund svých dat, že?
NE . Pokud zapnete AOF i RDB, po restartu Redis bude soubor AOF použit k opětovnému sestavení databáze. Protože jej nakonfigurujete na appendfsync everysec
, ztratíte pouze poslední 1 sekundu dat.
Jsou časy restartů důvodem k obavám? Můj soubor dump.rdb je malý; ~90 MB.
Pokud zapnete AOF a když se Redis restartuje, přehraje protokoly v souboru AOF, aby znovu sestavil databázi. Normálně je soubor AOF větší než soubor RDB a může být pomalejší než obnova ze souboru RDB. Měli byste si s tím dělat starosti? Proveďte benchmark s vašimi vlastními daty ve vašem konkrétním prostředí.
UPRAVIT
DŮLEŽITÉ UPOZORNĚNÍ
Předpokládejme, že jste již nastavili Redis, aby používal ukládání RDB, a zapisujete do Redis spoustu dat. Po chvíli budete chtít zapnout ukládání AOF. NIKDY NEUPRAVUJTE KONFIGURAČNÍ SOUBOR PRO ZAPNUTÍ AOF A RESTARTOVÁNÍ REDIS, JINAK ZTRATÍTE VŠE .
Protože jakmile nastavíte appendonly yes
v redis.conf a restartujte Redis, načte data ze souboru AOF, bez ohledu na to, zda soubor existuje nebo ne. Pokud soubor neexistuje, vytvoří prázdný soubor a pokusí se načíst data z tohoto prázdného souboru. Takže o všechno přijdete.
Ve skutečnosti nemusíte restartovat Redis, abyste zapnuli AOF. Místo toho můžete použít config set
příkaz k dynamickému zapnutí:config set appendonly yes
.