Redis FAQ

Redis är en in-memory databas med persistens till disk, designad för hög läs- och skrivhastighet genom att hantera komplexa datatyper och atomiska operationer direkt i minnet. Databasen kräver att hela datasetet ryms i minnet, men erbjuder mekanismer för persistens (RDB, AOF) och minnesoptimering genom datamodellering och konfigurationsalternativ som maxmemory och evictionspolicyer. Bakgrundslagring i Redis använder fork()-systemanropet och copy-on-write-semantik, vilket kräver att Linux-inställningen overcommit_memory är satt till 1 för att förhindra fel vid minnesallokering. Redis är sällan CPU-begränsad; prestanda begränsas oftast av minne eller nätverk. För att skala CPU-användning kan flera Redis-instanser eller sharding användas, och framtida versioner planerar ökad trådad funktionalitet. En enskild Redis-instans kan hantera upp till 2^32 nycklar och element per datastruktur, med den praktiska gränsen bestämd av tillgängligt systemminne.