Finns det en fördel med att köra Redis på mer än en instans?
Ja. Det finns minst tre fördelar.
- Redis är enkeltrådad (i själva verket har den mer än en tråd, men det mesta arbetet görs i en enda tråd). Med mer än en instans kan du uppnå bättre prestanda.
- Redis lagrar data i minnet och lagringen är begränsad till storleken på en enda maskins minne. För att lagra mer data kan du distribuera mer än en Redis-instans på olika maskiner, och varje instans lagrar olika delar av hela data.
- Du kan ha en Redis-masterinstans och dess slavinstans som körs på två olika maskiner. Om maskinen som kör huvudinstansen är nere kan slavinstansen fortfarande betjäna förfrågningarna.
Om så är fallet, hur uppnår du paritet mellan mer än en Redis-instans?
Jag är inte säker på vad du menar med paritet . Menar du relationen mästare-slav? Redis kan ha en master med flera slavar, och varje slav kan till och med ha sina egna slavar (om jag minns rätt).
skulle inte några av fördelarna med att använda Redis i första hand förnekas om du använder mer än en instans av en webbapp? Att interagera med Redis på en lokal dator verkar vara mycket snabbare än att hämta data från minnet på instans A och sedan flytta den över nätverket till instans B.
Om du distribuerar Redis-instansen och webbappsinstansen på två olika datorer måste du se till att nätverket mellan de två maskinerna har låg latens .