ajay chebbi, sr. architect. cloud services for mobile and · pdf fileajay chebbi, sr....

Post on 08-Mar-2018

228 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Resiliency for Cloud Deployed Applications

Ajay Chebbi, Sr. Architect. Cloud services for Mobile and Web

Deploying applications on the Cloud

• Is a default option for applications for Mobile, Web, API and more

• Not just boutique/born on the cloud companies – Banks

– Airlines

– Insurance

– B2E is a predominant pattern

• Motivations – Pay-go: Move cap-ex to op-ex

– Pay-per-use: Variable work loads

– Cognitive/AI: Delivered on cloud

– Innovation: Line of Business is empowered!

But…

Uptime/Downtime

“According to Dun and Bradstreet, 59% of Fortune 500 companies

experience an average of 1.6 hours of downtime every week. Whatever the

reason, it is almost guaranteed, whether you are a start-up or an established

firm, that you will experience downtime at some point.

Just over an hour and half of downtime per week may not seem like a huge

number. However, when you consider that the cost of a single hours’

downtime can be anywhere between $15,000 and $1.5 million, it becomes

an issue to take very seriously”

“Calculating The True Cost of Downtime” http://rfa.com/blog/2015/09/15/calculating-the-true-cost-of-downtime/

BALANCE IN THE FORCE…

ACHIEVE WE MUST

Understand the 9 game

Availability % Down time per week Down time per day

99% (2 nines) 1.68 hours 14.4 minutes

99.95% 5.04 minutes 43.2 seconds

99.99% (”4 nines") 1.01 minutes 8.66 seconds

https://en.wikipedia.org/wiki/High_availability

Micro services – a foundational pattern

• You build your software as micro services (Services, not Servers)

Load balancer Load balancer

Au Az View

Controller Model

Audit Rep

server1

server2

server3 Audit

Model Controller

Au Au Au

Load balancer Load balancer

Au Az View

Controller Model

Audit Rep

*aaS

*aaS

*aaS

*aaS

Realization of micro services – combination of IaaS, PaaS and SaaS

Audit

Model Controller

Au Au Au

Load balancer Load balancer

Au Az View

Controller Model

Audit Rep

*aaS

*aaS

*aaS

*aaS

Au Az

Load Balancer

View

Controller Model

Resiliency patterns – to start with

• Patterns you may employ – Dedicated Compute

• Provides dedicated capacity • Relief from “Noisy neighbors” in a multi tenant space

– Retry • Retry: Temporary resource failures (404, 500) • With Delay: Throttling victim (http – 429 “TOO MANY REQUESTS”)

– Circuit Breakers • Fail gracefully on predictable outage • Limit “blast radius”

– Cache • Performance • Isolation from high latency resources

– Blue-Green deploy • Update with no down time

Stateless services

• No memory of last request – State is handled outside the application (e.g: DB,cache)

– No in-memory session

– Allows horizontal scaling with no loss

– REST is the native language of communication

– If at all – client maintains state (i.e. context)

A dog never remembers the scolding she got in the morning!

A happy dog!

Open tech

• Building services on open specs gives you many tools – Docker

– Kubernetes, Swarm

– Amalgam8

– Mesos

– Terraform

– Cloud Foundry

– VMs

• Multi region / multi vendor cloud

99.98 deployment on Bluemix – use case for a Japanese customer

Go Router

Containers

Go Router

Containers

Global Load balancer

db

London

Dallas

db

Replication

Hotbackup Failover

QnA

May the force be with you!

Thank You.

www.modsummit.com

www.developersummit.com

top related