View
134
Download
0
Embed Size (px)
Citation preview
SILO-BASED ARCHITECTURES
Georgiana Gligor Tekkie Consulting
FOR HIGH AVAILABILITY APPLICATIONS
CodeCamp Cluj May 2016
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016
Georgiana Gligor
✓Geek. Mother. Do-er.
✓Crafting enterprise-level apps
on LAMP stack since 2003
✓Architecture and DevOps consultant
✓ PHP Cluj Meetup Organizer
3
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016
Agenda
✓who needs to address high availability?
✓describe high availability
✓silos: a possible approach
✓advantages and disadvantages
4
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016
Software industry is
built around
anticipating change.
David Scott Bernstein, “Beyond Legacy Code”
5
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016 6
YOUR APPLICATION
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016
Standard Application Components
7
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016 8
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016 9
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016
master
FrontendBusinessLogic
FrontendFrontend
Browser
internetLoad
balancer
slave
reads writes
How Do You Adjust?
10
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016
master
FrontendBusinessLogic
FrontendFrontend
Browser
internetLoad
balancer
slave
reads writes
How Do You Adjust?
11
redundancy
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016
master
FrontendBusinessLogic
FrontendFrontend
Browser
internetLoad
balancer
slave
reads writes
How Do You Adjust?
12
resilience
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016 13
Typical Application Layering
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016 14
Application Components
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016 15
HIGH AVAILABILITY
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016
Ability to access the system:
✓ retrieve information
✓ alter information
✓ send new data
Availability
16
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016
Downtime
▸ scheduled
▸ unscheduled
17
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016
The 9s Dance
18
Uptime Shortname Downtime (per year)
90.000 % one nine 36.5 days
99.000 % two nines 3.65 days
99.900 % three nines 8.76 hrs
99.990 % four nines 52.56 mins
99.999 % five nines 5.26 mins
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016
A man's got to know
his limitations.
Dirty Harry
19
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016
HA System Design Principles
1. eliminate single points of failure
2. reliable crossover
3. detect failures as they occur
20
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016 21
SILOS
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016
Departments inside a company do not
work together.
Silo Mentality
22
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016
User Behaviour
23
booking .com
expedia .com
imobiliare .ro
Alexa Rank 111 429 22879
daily time on site
10:00 mins
7:20 mins
10:30 mins
daily pageviews per visitor 7.51 5.12 9.60
bounce rate 21.20 % 22.10 % 22.80 %
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016 24
Application Components (again)
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016 25
Happens to the Best
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016 26
Silo-Based Architecture
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016 27
Silos: Multiple Caches
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016 28
Silos: A/B Testing
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016 29
Silos: Live Upgrades
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016
Advantages
✓ real A/B testing
✓ no BHUF requirements
✓ no disruption => brand loyalty
✓ lower TCO
✓ simplify scalability
✓ avoid unneeded complexity by reusing familiar
technologies30
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016
Disadvantages
✓ needs razor-sharp DevOps team
✓ small increase in hardware costs on kick-off
✓ adds complexity to the monitoring layer
✓ reconsider traceability
✓ reproducing and hunting bugs is going to
change forever
31
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016 32
TAKEAWAYS
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016 33
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016
Takeaways
✓ build situational awareness with clever
monitoring
✓ automate outage detection
✓ powerful A/B testing
✓ think long-term
34
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016
Further Reading
✓ Wikipedia HA page
✓ OpenStack’s HA concepts
✓ Merge Hemo report from FDA
✓ USA Presidential Policy Directive 21
✓ “Beyond Legacy Code” book
✓ Varnish Plus
35
Silo-Based Architectures For High Availability Applications - Georgiana Gligor - CodeCamp Cluj - May 2016 36
Q & A
THANK YOU!
Discover. Design.
Develop. Deliver.
Georgiana Gligor
@gbtekkie