Šeit ir salīdzinājums, kā Redis Sentinel un Redis Clustering darbojas uzticamības ziņā:
Redis Sentinel
- Augsta pieejamība: Redis Sentinel nodrošina augstu pieejamību, izmantojot automātisku kļūmjpārlēci. Ja galvenais mezgls neizdodas, Sentinel automātiski veicinās vienu no reprodukcijas mezgliem, lai kļūtu par jauno galveno mezglu.
- Single Point of Failure: lai gan Sentinel nodrošina augstu pieejamību, tam joprojām ir viens kļūmes punkts — paši Sentinel mezgli. Ja visi Sentinel mezgli neizdodas, Redis izvietošana zaudēs spēju veikt automātisku kļūmjpārlēci.
- Asinhronā replikācija: Redis Sentinel izmanto asinhrono replikāciju starp galveno un replikācijas mezgliem. Tas nozīmē, ka pastāv datu zuduma risks, ja galvenā ierīce neizdodas, pirms replikas ir pilnībā panākušas.
- Ierobežota mērogojamība: Redis Sentinel ir paredzēts salīdzinoši nelielam Redis mezglu skaitam. Tas nenodrošina Redis Clustering horizontālās mērogošanas iespējas.
Redis klasterēšana
- Distributed Architecture: Redis klasterēšanai ir sadalīta arhitektūra bez viena kļūmes punkta. Dati tiek automātiski sadalīti vairākos Redis mezglos.
- Augsta pieejamība: Redis klasterēšana nodrošina augstu pieejamību, izmantojot automātisku kļūmjpārlēci. Ja galvenais mezgls neizdodas, klasteris automātiski veicinās vienu no reprodukcijas mezgliem, lai kļūtu par jauno galveno mezglu.
- Sinhronā replikācija: Redis Clustering var konfigurēt, lai izmantotu sinhrono replikāciju, kas nodrošina labākas datu konsekvences garantijas salīdzinājumā ar Sentinel asinhrono replikāciju.
- Horizontālā mērogojamība: Redis Clustering ir paredzēts horizontālai mērogošanai. Jūs varat viegli pievienot vai noņemt mezglus klasterim, lai palielinātu jaudu.
Rezumējot, Redis Sentinel nodrošina augstu pieejamību salīdzinoši nelielai Redis izvietošanai, taču tai ir viens kļūmes punkts pašos Sentinel mezglos. No otras puses, Redis Clustering piedāvā izkliedētāku un mērogojamāku arhitektūru ar spēcīgākām konsekvences garantijām, padarot to par uzticamāku izvēli lielākiem un prasīgākiem Redis izvietojumiem.
Izvēle starp Sentinel un Clustering ir atkarīga no jūsu lietojumprogrammas īpašajām uzticamības, mērogojamības un konsekvences prasībām. Misijai kritiskām, ļoti mērogojamām lietojumprogrammām Redis Clustering parasti ir uzticamākā iespēja.
Citāts:[1] https://cloudinfrastructureservices.co.uk/redis-sentinel-vs-cluster/
[2] https://www.linkedin.com/pulse/redis-sentinel-vs-cluster-osama-ahmed
[3] https://stackoverflow.com/questions/53060714/redis-sentinel-standalone-or-cluster-which-is-best-for-session
[4] https://redis.io/docs/latest/operate/oss_and_stack/management/scaling/
[5] https://groups.google.com/g/redis-db/c/KK7LW0dBD5Q