Most PowerfulHigh AvailabilityLoad BalancingSep, 29, 2012YAPC::Asia 2012 @riywo
View Slide
@riywo
http://www.publicdomainpictures.net/view-image.php?image=4314&picture=t-shirt-image
Talk about....* Why is this good?* Why is this bad?
HALB
What?
LBServerServerServerServer
HAServerServerServerServer✗HealthCheck
Same!
Where?
HALBWebWebWebWebUser
HALBDBDBDBDBWeb
HALBAPIAPIAPIAPIWeb
Anywhere!
How?
BIG-IPServerIron
LVS
HAProxy
mod_proxy
nginx
ELB
MyDNS
Pros/Cons
Pros ConsH/WInline(DSR)Powerful DifficultExpensiveProxyInline(DSR) Easy to use PerformanceDNS Noproxy Performance Difficult
DNS
No Proxy
DNS DBDBDBDBWeb12Weighted-DNSRoundRobinHALB
Cache
DNS DBDBDBDBWeb2Cache13
Cache isDifficult
DNS DBDBDBDBWebCache✗HealthCheck
DNS DBDBDBDBWebCache✗HealthCheckInconsistent
Solution
ClientDNS
DNSDBDBDBDBWeb✗HealthCheck
Too manyHealth Check
DBDBDBDBDNSWeb✗HealthCheckDNSWebDNSWebHealthCheckHealthCheck
EventualConsistent
DBDBDBDBDNSWeb✗DNSWebDNSWebHealthCheckDNS2 Async1
DBDBDBDB✗MyDNSWebHealthCheckMyDNS12 ReplicationMyDNSWeb MyDNSWeb
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!
@riywoblog.riywo.comweblog.riywo.com