Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Most Powerful High Availability / Load Balancin...
Search
riywo
September 30, 2012
Programming
3
3.6k
Most Powerful High Availability / Load Balancing #yapcasia 2012
riywo
September 30, 2012
Tweet
Share
More Decks by riywo
See All by riywo
Monitoring Casual #2
riywo
1
390
ServerSchemaCoreAPI
riywo
0
1.5k
Ops Tool made by Perl Beginner #yapcasia 2012
riywo
5
28k
Other Decks in Programming
See All in Programming
のびしろを広げる巻き込まれ力:偶然を活かすキャリアの作り方/oso2024
takahashiikki
1
350
Vitest Browser Mode への期待 / Vitest Browser Mode
odanado
PRO
2
1.6k
AWS IaCの注目アップデート 2024年10月版
konokenj
3
550
テスト駆動開発✅️
akitoshiga
1
200
レイトレ合宿10 レンダラー紹介 / Renderer Introduction, Ray Tracing Camp 10
shocker_0x15
0
670
いかにして不足・不整合なくデータ移行したか
tjmtmmnk
1
1k
Kaigi on Rails 2024 - Rails APIモードのためのシンプルで効果的なCSRF対策 / kaigionrails-2024-csrf
corocn
4
2.2k
GCCのプラグインを作る / I Made a GCC Plugin
shouth
1
140
生成 AI を活用した toitta 切片分類機能の裏側 / Inside toitta's AI-Based Factoid Clustering
pokutuna
0
510
GPU Hash Table | レイトレ合宿10
yknishidate
0
360
Vertical Architectures for Scalable Angular Applications
manfredsteyer
PRO
0
270
ECSのサービス間通信 4つの方法を比較する 〜Canary,Blue/Greenも添えて〜
tkikuc
10
2.1k
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.8k
Music & Morning Musume
bryan
46
6.1k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Teambox: Starting and Learning
jrom
132
8.7k
Git: the NoSQL Database
bkeepers
PRO
425
64k
Build The Right Thing And Hit Your Dates
maggiecrowley
32
2.4k
Bash Introduction
62gerente
608
210k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
How GitHub (no longer) Works
holman
311
140k
Facilitating Awesome Meetings
lara
49
6k
GraphQLの誤解/rethinking-graphql
sonatard
66
9.9k
Transcript
Most Powerful High Availability Load Balancing Sep, 29, 2012 YAPC::Asia
2012 @riywo
@riywo
http://www.publicdomainpictures.net/view-image.php?image=4314&picture=t-shirt-image
None
None
Talk about.... * Why is this good? * Why is
this bad?
HALB
What?
LB Server Server Server Server
HA Server Server Server Server ✗ Health Check
Same!
Where?
HA LB Web Web Web Web User
HA LB DB DB DB DB Web
HA LB API API API API Web
Anywhere!
How?
BIG-IP ServerIron
LVS
HAProxy
mod_proxy
nginx
ELB
MyDNS
Pros/Cons
Pros Cons H/W Inline (DSR) Powerful Difficult Expensive Proxy Inline
(DSR) Easy to use Performance DNS No proxy Performance Difficult
Pros Cons H/W Inline (DSR) Powerful Difficult Expensive Proxy Inline
(DSR) Easy to use Performance DNS No proxy Performance Difficult
DNS
No Proxy
DNS DB DB DB DB Web 1 2 Weighted-DNS RoundRobin
HA LB
Cache
DNS DB DB DB DB Web 2 Cache 1 3
Cache is Difficult
DNS DB DB DB DB Web Cache ✗ Health Check
DNS DB DB DB DB Web Cache ✗ Health Check
Inconsistent
Solution
Client DNS
DNS DB DB DB DB Web ✗ Health Check
Too many Health Check
DB DB DB DB DNS Web ✗ Health Check DNS
Web DNS Web Health CheckHealth Check
Solution
Eventual Consistent
DB DB DB DB DNS Web ✗ DNS Web DNS
Web Health Check DNS 2 Async 1
How?
DB DB DB DB ✗ MyDNS Web Health Check MyDNS
1 2 Replication MyDNS Web MyDNS Web
Good Points
* Clients know all info * Eventual Consistent * Any
Application:)
Bad Points
* Too much... * Async difficult
Join us! * Perl Mongers * Operation Engineers
Join us! * Perl Mongers * Operation Engineers * Baseball
Players :)
Thanks!
@riywo blog.riywo.com weblog.riywo.com