Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Why our platform needs Redis Sentinel
Search
Luong Vo
August 11, 2020
Technology
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Why our platform needs Redis Sentinel
Luong Vo
August 11, 2020
More Decks by Luong Vo
See All by Luong Vo
Performance Monitoring at Employment Hero
luongvo
0
170
Lalaland - A C2C ecommerce site - pitch deck
luongvo
0
470
Skeleton-based Human Action Recognition with Recurrent Neural Network
luongvo
0
270
Ruby Threads
luongvo
1
48
Caching in Ruby
luongvo
1
42
Monitoring system at Employment Hero
luongvo
0
63
Introduction to Docker and Docker Compose
luongvo
0
100
Database migration from Heroku to Amazon Web Services
luongvo
0
86
Sandbox environments for development
luongvo
0
57
Other Decks in Technology
See All in Technology
お客様の「やりたい」の先を見通す合意形成プロセス ~裏にある課題と不安を解きほぐすコツ~
yukakoseki
0
110
GCASアップデート(202607-202610)
techniczna
1
200
TSKaigi Sendai 2026 - tsgo時代のTypeScript Playgroundはどう動くか
teamlab
PRO
0
110
`go get`したらELFが降ってきた件
taiyow
0
180
Autonomous AI Lakehouse - Live AI Hubから始めるセキュアなAIデータ活用 -
oracle4engineer
PRO
3
190
AIがGISを代替する日:〜すべてをAIが創る時代に、私たちがFOSS4Gに関わる意味〜
lehupa
1
210
PostgreSQL オプティマイザ統計の秘密
nori_shinoda
0
360
Oracle Database Security 詳細解説
oracle4engineer
PRO
2
270
"AWSはちょっと苦手"でも大丈夫。AWS Blocks で手軽に作る Flutter のバックエンド #FlutterKaigi
tacck
PRO
0
160
複雑な業務システムを高速でつくるため、チーム全員をつくれる人へ
ayakurabuchi
0
140
デザインレビューは自動化できるのか?─ Flutter × Figma で UI 品質保証を考える
techiro
2
800
業務でAWSをあまり使っていない私が、AWSへのモチベを保つ方法
smt7174
0
160
Featured
See All Featured
HDC tutorial
michielstock
2
1k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.9k
AI: The stuff that nobody shows you
jnunemaker
PRO
10
1.3k
Building Better People: How to give real-time feedback that sticks.
wjessup
371
20k
Are puppies a ranking factor?
jonoalderson
2
4.1k
How STYLIGHT went responsive
nonsquared
100
6.4k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
300
Docker and Python
trallard
47
4.3k
Build your cross-platform service in a week with App Engine
jlugia
234
19k
The browser strikes back
jonoalderson
0
1.9k
Exploring anti-patterns in Rails
aemeredith
4
560
Transcript
Redis Sentinel High availability with your beloved Redis
Single server, single failure point Redis Instance Client Application
Multiple servers Redis Instance Client Application Redis Instance Redis Instance
Replication Redis Master Client Application Redis Slave Redis Slave
Replication Redis Master Client Application Redis Slave Redis Slave Async
replication
Replication Use Case Redis Master Client Application Redis Slave Redis
Slave Async replication Increase scalability, data safety Write to master, read from any
Still doesn’t improve failover Redis Master Client Application Redis Slave
(Terminating) Redis Slave Read error
Still doesn’t improve failover Client Application Redis master (Terminating) Redis
Slave Stale data Redis Slave Stale data
Failure event expectation Redis Master (terminating….) Client Application Redis Slave
(being promoted..) Redis Slave
Failure event expectation New redis Master Client Application Redis Slave
(just created) Redis Slave
Who decides the failure and recovery?
Redis Sentinel Redis Master Client Application Redis Slave Redis Slave
Sentinel 2 Sentinel 3 Sentinel 1 Monitor Notify Clients
Judging Redis with Sentinel practically Consistency, Availability, Partition Tolerance? Consistency
or Availability is depending on configuration, but Redis is not designed to be highly CP or AP.
High availability configuration Redis Master Client Application Redis Slave Redis
Slave Sentinel 2 Sentinel 3 Sentinel 1
High availability configuration Redis Master Client Application Redis Slave Redis
Slave Sentinel 2 Sentinel 3 Sentinel 1
High availability configuration Redis Master Client Application Redis Slave Redis
Slave Sentinel 2 Sentinel 3 Sentinel 1 Network partition
High availability configuration Redis Master Client Application Redis Slave Redis
Slave Sentinel 2 Sentinel 3 Sentinel 1 unavailable available available
High availability configuration Client Application Redis Slave Redis Master (terminating….)
Sentinel 3 unavailable available available Sentinel 2 New redis Master Sentinel 1
However Client Application Redis Slave Redis Master (terminating….) Sentinel 3
unavailable available available Sentinel 2 New redis Master Sentinel 1 Lost w rite Async replication, remember?
High consistency configuration Client Application Redis Slave Redis Master (terminating….)
Sentinel 3 unavailable available available Sentinel 2 New redis Master Sentinel 1 min-replicas-to-write 1 min-replicas-max-lag 10 stop!
Eventual Consistency Strict vs Eventual consistency
Multiple master to improve HA Client Application Redis Master Redis
Slave Redis Slave Sentinel 2 Sentinel 3 Sentinel 1 Redis Master Redis Slave Redis Slave Sentinel 5 Sentinel 6 Sentinel 4 Redis Master Redis Slave Redis Slave Sentinel 8 Sentinel 9 Sentinel 7
None
None