edge architecture ieee international conference on cloud engineering

129
Netflix’s Global Cloud Edge Architecture Mikey Cohen [email protected] Edge Engineering Platform Netflix

Post on 16-Sep-2014

833 views

Category:

Technology


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Edge architecture   ieee international conference on cloud engineering

Netflix’s Global Cloud Edge Architecture

Mikey Cohen [email protected] Engineering Platform

Netflix

Page 2: Edge architecture   ieee international conference on cloud engineering

Over 44 million subscribers

in over 40 countries

Page 3: Edge architecture   ieee international conference on cloud engineering

Netflix accounts for over 30% of peak internet traffic in North America

Page 4: Edge architecture   ieee international conference on cloud engineering

One billion hours ~ 100,000 years

per month...

Page 5: Edge architecture   ieee international conference on cloud engineering

Netflix supports over 1000 device types

Page 6: Edge architecture   ieee international conference on cloud engineering

Edge Services

● Front door to Netflix● Edge Routing - Zuul● API - Edge Server● Playback services

Page 7: Edge architecture   ieee international conference on cloud engineering

How does Netflix Streaming work?*

* A simplified view

Page 8: Edge architecture   ieee international conference on cloud engineering

How does Netflix Streaming work?

Netflix Services in Amazon Cloud

Your CE DeviceCDN

Page 9: Edge architecture   ieee international conference on cloud engineering

Device Under the Hood

Netflix Services in Amazon Cloud

Your CE DeviceCDN

User Interface

Netflix Streaming Platform

DRM encodingCE integration

Page 10: Edge architecture   ieee international conference on cloud engineering

User Interface loaded, data retrieved from Netflix Edge Service

User Interface

Netflix Streaming Platform

DRM

Netflix Services in Amazon Cloud

encoding

Your CE DeviceCDN

CE integration

Edge Services

Page 11: Edge architecture   ieee international conference on cloud engineering

User Interface loaded, data retrieved from Netflix Edge Service

User Interface

Netflix Streaming Platform

DRM

Netflix Services in Amazon Cloud

encoding

Your CE DeviceCDN

CE integration

Edge Services

Page 12: Edge architecture   ieee international conference on cloud engineering

User Interface Loaded

User Interface

Netflix Streaming Platform

DRM

Netflix Services in Amazon Cloud

encoding

Your CE DeviceCDN

CE integration

Edge Services

Page 13: Edge architecture   ieee international conference on cloud engineering

Movie Authorization

User Interface

Netflix Streaming Platform

DRM

Netflix Services in Amazon Cloud

encoding

Your CE DeviceCDN

CE integration

Edge Services

Authorize

Page 14: Edge architecture   ieee international conference on cloud engineering

Movie Authorization

User Interface

Netflix Streaming Platform

DRM

Netflix Services in Amazon Cloud

encoding

Your CE DeviceCDN

CE integration

Edge Services

Authorize

Page 15: Edge architecture   ieee international conference on cloud engineering

Obtaining License

User Interface

Netflix Streaming Platform

DRM

Netflix Services in Amazon Cloud

encoding

Your CE DeviceCDN

CE integration

Edge Services

License

Page 16: Edge architecture   ieee international conference on cloud engineering

Movie starts streaming

User Interface

Netflix Streaming Platform

DRM

Netflix Services in Amazon Cloud

encoding

Your CE DeviceCDN

CE integration

Edge Services

PlayData

Page 17: Edge architecture   ieee international conference on cloud engineering

Movie starts streaming

User Interface

Netflix Streaming Platform

DRM

Netflix Services in Amazon Cloud

encoding

Your CE DeviceCDN

CE integration

Edge Services

Page 18: Edge architecture   ieee international conference on cloud engineering

Periodic “bookmark” calls note place in movie

User Interface

Netflix Streaming Platform

DRM

Netflix Services in Amazon Cloud

encoding

Your CE DeviceCDN

CE integration

Edge Services

bookmark

Page 19: Edge architecture   ieee international conference on cloud engineering

Edge Services - What we are talking about today

User Interface

Netflix Streaming Platform

DRM encoding

Your CE DeviceCDN

CE integration

bookmarkNetflix Services in Amazon Cloud Edge Services

Page 20: Edge architecture   ieee international conference on cloud engineering

Edge’s lofty mission

● High Availability ● Good performance● Data broker between many services and

devices in a global, high volume, rapidly innovating, highly dynamic service

● Clients and services are constantly changing

Page 21: Edge architecture   ieee international conference on cloud engineering

Edge stats

● Billions of incoming requests per day○ Over 10X outgoing service calls per request

● About 10 device changes per day● Daily service pushes● Daily routing changes

Page 22: Edge architecture   ieee international conference on cloud engineering

Architecture Goals● Infrastructure

○ Availability○ Resiliency○ Scalability

● Application○ Platform diversity○ Rapid innovation○ A/B Testing

● Delivery○ Automation○ Insights

Page 23: Edge architecture   ieee international conference on cloud engineering

Netflix’s Global Cloud Architecture

Page 24: Edge architecture   ieee international conference on cloud engineering

High Level Regional Edge Architecture

ELB

Edge Service

Netflix Services

ELB

Playback Service

ELB

Zuul

Website Service

Page 25: Edge architecture   ieee international conference on cloud engineering

Zuul

ELB

Edge Service

Netflix Services

ELB

Playback Service

ELB

Zuul

Website Service

Page 26: Edge architecture   ieee international conference on cloud engineering

What is Zuul?

● Open source framework for dynamically reading, writing, and executing filters that act on incoming HTTP requests

● Dynamically compiled filters written in Groovy○ Any JVM language supported

● Filters share state through a request scoped context

Page 27: Edge architecture   ieee international conference on cloud engineering

How we use Zuul● Authentication● Insights● Stress Testing● Canary Testing● Dynamic Routing● Service Migration● Load Shedding● Security● Static Response handling● Active/Active traffic management

Page 28: Edge architecture   ieee international conference on cloud engineering

Zuul Filter Characteristics

● Type● Execution Order● Criteria● Action

Page 29: Edge architecture   ieee international conference on cloud engineering

Zuul Filter LifecycleHTTP Request

"pre" filters "routing" filter(s) "post" filters

Origin Server

"custom" filters

Http Request Http Response

"error" filters

Page 30: Edge architecture   ieee international conference on cloud engineering

Zuul Filter LifecycleHTTP Request

"pre" filters "routing" filter(s) "post" filters

Origin Server

"custom" filters

Http Request Http Response

"error" filters

Page 31: Edge architecture   ieee international conference on cloud engineering

zuul filter lifecycleHTTP Request

"pre" filters "routing" filter(s) "post" filters

Origin Server

"custom" filters

Http Request Http Response

"error" filters

Page 32: Edge architecture   ieee international conference on cloud engineering

zuul filter lifecycleHTTP Request

"pre" filters "routing" filter(s) "post" filters

Origin Server

"custom" filters

Http Request Http Response

"error" filters

Page 33: Edge architecture   ieee international conference on cloud engineering

zuul filter lifecycleHTTP Request

"pre" filters "routing" filter(s) "post" filters

Origin Server

"custom" filters

Http Request Http Response

"error" filters

Page 34: Edge architecture   ieee international conference on cloud engineering

zuul filter lifecycleHTTP Request

"pre" filters "routing" filter(s) "post" filters

Origin Server

"custom" filters

Http Request Http Response

"error" filters

Page 35: Edge architecture   ieee international conference on cloud engineering

zuul filter lifecycleHTTP Request

"pre" filters "routing" filter(s) "post" filters

Origin Server

"custom" filters

Http Request Http Response

"error" filters

Page 36: Edge architecture   ieee international conference on cloud engineering

zuul filter lifecycleHTTP Request

"pre" filters "routing" filter(s) "post" filters

Origin Server

"custom" filters

Http Request Http Response

"error" filters

Page 37: Edge architecture   ieee international conference on cloud engineering

zuul filter lifecycleHTTP Request

"pre" filters "routing" filter(s) "post" filters

Origin Server

"custom" filters

Http Request Http Response

"error" filters

Page 38: Edge architecture   ieee international conference on cloud engineering

Example FilterFile: DeviceDelayFilter.groovy

1 class DeviceDelayFilter extends ZuulFilter { 2 3 def static Random rand = new Random() 4 @Override 5 String filterType() { 6 return 'pre' 7 } 8 9 @Override10 int filterOrder() {11 return 512 }13 14 @Override15 boolean shouldFilter() {16 return RequestContext.getRequest().17 getParameter("deviceType")?equals("BrokenDevice"):false18 }1920 @Override21 Object run() {22 sleep(rand.nextInt(20000)) //Sleep for a random number of seconds between [0-20]23 }24 }

Page 39: Edge architecture   ieee international conference on cloud engineering

Filter deployment

Page 40: Edge architecture   ieee international conference on cloud engineering

Active/Active

Page 41: Edge architecture   ieee international conference on cloud engineering

Multiple Active Regions

ZUUL

API

Cassandra

Services

ZUUL

API

Cassandra

Services

Page 42: Edge architecture   ieee international conference on cloud engineering

Multiple Active Regions - NM vs GE

ZUUL

API

Cassandra

Services

ZUUL

API

Cassandra

ServicesDNS

DNS

Page 43: Edge architecture   ieee international conference on cloud engineering

Multiple Active Regions- Cassandra Replication across regions

ZUUL

API

Cassandra

Services

ZUUL

API

Cassandra

ServicesDNS

DNS

Page 44: Edge architecture   ieee international conference on cloud engineering

DNS Misrouting

ZUUL

API

Cassandra

Services

ZUUL

API

Cassandra

ServicesDNS

DNS

Page 45: Edge architecture   ieee international conference on cloud engineering

DNS Misrouting

ZUUL

API

Cassandra

Services

ZUUL

API

Cassandra

ServicesDNS

DNS

Page 46: Edge architecture   ieee international conference on cloud engineering

Geo lookup resolves IP in west

ZUUL

API

Cassandra

Services

ZUUL

API

Cassandra

ServicesDNS

DNS

GEO

Page 47: Edge architecture   ieee international conference on cloud engineering

Zuul east routes to Zuul west

ZUUL

API

Cassandra

Services

ZUUL

API

Cassandra

ServicesDNS

DNS

GEO

Page 48: Edge architecture   ieee international conference on cloud engineering

Response is from west

ZUUL

API

Cassandra

Services

ZUUL

API

Cassandra

ServicesDNS

DNS

GEO

Page 49: Edge architecture   ieee international conference on cloud engineering

Regional Failure

ZUUL

API

Cassandra

Services

ZUUL

API

Cassandra

ServicesDNS

DNS

Page 50: Edge architecture   ieee international conference on cloud engineering

Catastrophe in US-East

ZUUL

API

Cassandra

Services

ZUUL

API

Cassandra

ServicesDNS

DNS

Page 51: Edge architecture   ieee international conference on cloud engineering

East Coast is Down

ZUUL

API

Cassandra

Services

ZUUL

API

Cassandra

ServicesDNS

DNS

Page 52: Edge architecture   ieee international conference on cloud engineering

Switch DNS to point to US-West

ZUUL

API

Cassandra

Services

ZUUL

API

Cassandra

ServicesDNSDNS

Page 53: Edge architecture   ieee international conference on cloud engineering

East traffic flows to West

ZUUL

API

Cassandra

Services

ZUUL

API

Cassandra

ServicesDNS

DNS

Page 54: Edge architecture   ieee international conference on cloud engineering

Edge Server (API)

Page 55: Edge architecture   ieee international conference on cloud engineering

The Edge Service - Netflix’s API Tier

ELB

Edge Service

Netflix Services

ELB

Playback Service

ELB

Zuul

Website Service

Page 56: Edge architecture   ieee international conference on cloud engineering

What’s wrong with REST for Netflix?

Page 57: Edge architecture   ieee international conference on cloud engineering

REST

● One Size Fits all● One Data Format Fits All● REST tends to be atomic● Average 25 REST requests to build up a

page.

Page 58: Edge architecture   ieee international conference on cloud engineering

Netflix’s Groovy Scripting Layer

Page 59: Edge architecture   ieee international conference on cloud engineering

Edge Scripting Tier

● Device teams write scripts for their device○ control content, format, endpoints

● Code injected directly into Edge Service at runtime○ Scripts are in production in about 30 seconds

Page 60: Edge architecture   ieee international conference on cloud engineering

Endpoint Code

(Groovy)

Endpoint Controller

RxJava

Async Service Layer API

Hystrix (Fault tolerance)Endpoint Manager

JVM

Netflix Services

Edge Server Architecture

Page 61: Edge architecture   ieee international conference on cloud engineering

Endpoint Code

(Groovy)

Endpoint Controller

RxJava

Async Service Layer API

Hystrix (Fault tolerance)Endpoint Manager

JVM

Netflix Services

Pushing a Script

UI Engineer

/ps3/home script

Page 62: Edge architecture   ieee international conference on cloud engineering

Endpoint Code

(Groovy)

Endpoint Controller

RxJava

Async Service Layer API

Hystrix (Fault tolerance)Endpoint Manager

JVM

Netflix Services

Pushing a Script

UI Engineer

/ps3/home script

Page 63: Edge architecture   ieee international conference on cloud engineering

Endpoint Code

(Groovy)

Endpoint Controller

RxJava

Async Service Layer API

Hystrix (Fault tolerance)Endpoint Manager

JVM

Netflix Services

Controller pulls new script / compiles

UI Engineer

/ps3/home script

Page 64: Edge architecture   ieee international conference on cloud engineering

Endpoint Code

(Groovy)

Endpoint Controller

RxJava

Async Service Layer API

Hystrix (Fault tolerance)Endpoint Manager

JVM

Netflix Services

Script Activated

UI Engineer

Activate

Page 65: Edge architecture   ieee international conference on cloud engineering

Service Layer

Page 66: Edge architecture   ieee international conference on cloud engineering

Endpoint Code

(Groovy)

Endpoint Controller

RxJava

Async Service Layer API

Hystrix (Fault tolerance)Endpoint Manager

JVM

Netflix Services

Service Layer

Page 67: Edge architecture   ieee international conference on cloud engineering

Purpose of the Service Layer

● Interface to business logic (our API)● Shield data consumers from service

changes● Combine and expose business data in a

logical and consistent manner● All Service Layer methods are async using

RxJava○ Hides concurrency and underlying implementation

from callers

Page 69: Edge architecture   ieee international conference on cloud engineering

Endpoint Code

(Groovy)

Endpoint Controller

RxJava

Async Service Layer API

Hystrix (Fault tolerance)Endpoint Manager

JVM

Netflix Services

RxJava

Page 70: Edge architecture   ieee international conference on cloud engineering

RxJava● Why?

○ How do you expose an async service as an API?○ Solution to compose async flows and sequences of

data○ Rich set of operators to filter and interact with data

Page 71: Edge architecture   ieee international conference on cloud engineering

How RxJava Helps

● Need to hide concurrency from script writers○ Minimize the “bad things” consumers of our API on

box can do. ○ Hide the internal implementation

■ Change concurrency of any given call■ Switch to non-blocking IO

Page 73: Edge architecture   ieee international conference on cloud engineering

Endpoint Code

(Groovy)

Endpoint Controller

RxJava

Async Service Layer API

Hystrix (Fault tolerance)Endpoint Manager

JVM

Netflix Services

Hystrix

Page 74: Edge architecture   ieee international conference on cloud engineering
Page 75: Edge architecture   ieee international conference on cloud engineering
Page 76: Edge architecture   ieee international conference on cloud engineering
Page 77: Edge architecture   ieee international conference on cloud engineering
Page 78: Edge architecture   ieee international conference on cloud engineering
Page 79: Edge architecture   ieee international conference on cloud engineering
Page 80: Edge architecture   ieee international conference on cloud engineering
Page 81: Edge architecture   ieee international conference on cloud engineering

How Hystrix helps● Latency and Fault Tolerance

○ Stop cascading failures. Fallbacks and graceful degradation. Fail fast and rapid recovery.

○ Thread and semaphore isolation with circuit breakers.

● Realtime Operations

○ Realtime monitoring and configuration changes. Watch service and property changes take effect

immediately as they spread across a fleet.

○ Be alerted, make decisions, affect change and see results in seconds.

● Concurrency

○ Parallel execution. Concurrency aware request caching. Automated batching through request collapsing.

Page 82: Edge architecture   ieee international conference on cloud engineering

Hystrix Dashboard Example

Page 83: Edge architecture   ieee international conference on cloud engineering

DELIVERY

Page 84: Edge architecture   ieee international conference on cloud engineering

Edge Delivery

● Continuous deployment● Automated system integrity analysis ● Tools for facilitating delivery

Page 85: Edge architecture   ieee international conference on cloud engineering

Automated Deployment Pipeline

Page 86: Edge architecture   ieee international conference on cloud engineering

ZUUL ZUUL-CANARY

ZUUL-DEBUG ZUUL-SQUEEZE

MAIN ORIGIN

CANARY ORIGIN

DEBUG ORIGIN

SQUEEZE ORIGIN

ELB

Edge Cluster Organization

Page 87: Edge architecture   ieee international conference on cloud engineering

ZUUL ZUUL-CANARY

ZUUL-DEBUG ZUUL-SQUEEZE

MAIN ORIGIN

CANARY ORIGIN

DEBUG ORIGIN

SQUEEZE ORIGIN

ELB

Most Requests to Main Origin

Page 88: Edge architecture   ieee international conference on cloud engineering

ZUUL ZUUL-CANARY

ZUUL-DEBUG ZUUL-SQUEEZE

MAIN ORIGIN

CANARY ORIGIN

DEBUG ORIGIN

SQUEEZE ORIGIN

ELB

Some requests to Canary

Page 89: Edge architecture   ieee international conference on cloud engineering

Canary Analysis

Page 90: Edge architecture   ieee international conference on cloud engineering

Canary Analysis Detail

Page 91: Edge architecture   ieee international conference on cloud engineering

ZUUL ZUUL-CANARY

ZUUL-DEBUG ZUUL-SQUEEZE

MAIN ORIGIN

CANARY ORIGIN

DEBUG ORIGIN

SQUEEZE ORIGIN

ELB

Response Validation

Page 92: Edge architecture   ieee international conference on cloud engineering

ZUUL ZUUL-CANARY

ZUUL-DEBUG ZUUL-SQUEEZE

MAIN ORIGIN

CANARY ORIGIN

DEBUG ORIGIN

SQUEEZE ORIGIN

ELB

Fork response to Main and Canary

Page 93: Edge architecture   ieee international conference on cloud engineering

ZUUL ZUUL-CANARY

ZUUL-DEBUG ZUUL-SQUEEZE

MAIN ORIGIN

CANARY ORIGIN

DEBUG ORIGIN

SQUEEZE ORIGIN

ELB

Validate response

Validate response integrity

Page 94: Edge architecture   ieee international conference on cloud engineering

ZUUL ZUUL-CANARY

ZUUL-DEBUG ZUUL-SQUEEZE

MAIN ORIGIN

CANARY ORIGIN

DEBUG ORIGIN

SQUEEZE ORIGIN

ELB

Targeted Debugging

Page 95: Edge architecture   ieee international conference on cloud engineering

ZUUL ZUUL-CANARY

ZUUL-DEBUG ZUUL-SQUEEZE

MAIN ORIGIN

CANARY ORIGIN

DEBUG ORIGIN

SQUEEZE ORIGIN

ELB

Targeted Debugging

Page 96: Edge architecture   ieee international conference on cloud engineering

ZUUL ZUUL-CANARY

ZUUL-DEBUG ZUUL-SQUEEZE

MAIN ORIGIN

CANARY ORIGIN

DEBUG ORIGIN

SQUEEZE ORIGIN

ELB

Targeted Debugging

Page 97: Edge architecture   ieee international conference on cloud engineering

ZUUL ZUUL-CANARY

ZUUL-DEBUG ZUUL-SQUEEZE

MAIN ORIGIN

CANARY ORIGIN

DEBUG ORIGIN

SQUEEZE ORIGIN

ELB

Squeezing the Origin

Page 98: Edge architecture   ieee international conference on cloud engineering

ZUUL ZUUL-CANARY

ZUUL-DEBUG ZUUL-SQUEEZE

MAIN ORIGIN

CANARY ORIGIN

DEBUG ORIGIN

SQUEEZE ORIGIN

ELB

Squeezing the Origin

Page 99: Edge architecture   ieee international conference on cloud engineering

ZUUL ZUUL-CANARY

ZUUL-DEBUG ZUUL-SQUEEZE

MAIN ORIGIN

CANARY ORIGIN

DEBUG ORIGIN

ELB

Finding service Capacity

SQUEEZE ORIGIN

Page 100: Edge architecture   ieee international conference on cloud engineering

Scryer - Predictive auto-scaling

● Why?○ Reactive doesn’t work in all cases○ Reacting is sometimes too late

■ Sunday morning cartoons○ Reactive overreacts

■ Superbowl, World Cup, Outages■ Fixed size scaling

○ All in All - more reliable and saves money

Page 101: Edge architecture   ieee international conference on cloud engineering

Daily Traffic Patterns

Page 102: Edge architecture   ieee international conference on cloud engineering

Scryer Predictions

Page 103: Edge architecture   ieee international conference on cloud engineering

How does Scryer work?● Traffic shape analysis

○ Monday vs Monday○ Sunday vs Sunday, etc○ FFT based smoothing

Page 104: Edge architecture   ieee international conference on cloud engineering

Filtering out Noise

Page 105: Edge architecture   ieee international conference on cloud engineering

Ignoring outages

Page 106: Edge architecture   ieee international conference on cloud engineering

Accounting for regular spikey traffic

Page 107: Edge architecture   ieee international conference on cloud engineering

Iteratively apply FFT

Page 108: Edge architecture   ieee international conference on cloud engineering

Other Scryer Factors● Traffic volume analysis

○ At least 4 weeks of data○ Linear regression based on time of day○ Correct the prediction based on today’s trend.

● Instance factors○ Instance startup time○ Instance capacity (obtained by squeeze testing)

● Scale (up/down) actions scheduled based on prediction

Page 109: Edge architecture   ieee international conference on cloud engineering

The Future

Page 110: Edge architecture   ieee international conference on cloud engineering

Future - Large Projects on Edge

● Async, non-blocking servers● Service layer redesign● Internal Insights● Global Insights

Page 111: Edge architecture   ieee international conference on cloud engineering

Edge Architecture Today

ELB

API Service

Netflix Services

ELB

Streaming Service

ELB

Zuul

Website Service

Zuul Zuul

Page 112: Edge architecture   ieee international conference on cloud engineering

Future Edge Architecture

ELB

API/ Edge Service

Netflix Services Playback Services

ELB

Zuul

Website

Page 113: Edge architecture   ieee international conference on cloud engineering

Future Edge Architecture

ELB

API/ Edge Service

Netflix Services Playback Services

ELB

Zuul

Website

Page 114: Edge architecture   ieee international conference on cloud engineering

Future Edge Architecture

ELB

API/ Edge Service

Netflix Services Playback Services

ELB

Zuul

Website

Page 115: Edge architecture   ieee international conference on cloud engineering

Future Edge Architecture

ELB

API/ Edge Service

Netflix Services Playback Services

ELB

Zuul

Website

Page 116: Edge architecture   ieee international conference on cloud engineering

Future Edge Architecture

ELB

API/ Edge Service

Netflix Services Playback Services

ELB

Zuul

Website

Page 117: Edge architecture   ieee international conference on cloud engineering

Global Insights

API/ Edge Service

Netflix Services

Playback Services

Zuul User Interface

Insight EngineEvent Stream

Client Data

Page 118: Edge architecture   ieee international conference on cloud engineering

User Interface Designs

Page 119: Edge architecture   ieee international conference on cloud engineering
Page 120: Edge architecture   ieee international conference on cloud engineering
Page 121: Edge architecture   ieee international conference on cloud engineering

Netflix in the Cloud - 5 years later

Lessons learned

Page 122: Edge architecture   ieee international conference on cloud engineering

What Did We Learn?

Page 123: Edge architecture   ieee international conference on cloud engineering

Failure is Assured!

Page 124: Edge architecture   ieee international conference on cloud engineering

● Code failure - Continuous delivery ● Service failure - fallbacks and redundancy● Instances and Zone failure - redundancy ● Cloud infrastructure failure - Multiple active regions● Human failure - Automation

Building for Failure

Page 125: Edge architecture   ieee international conference on cloud engineering

Drawbacks of the cloud● Some failures are difficult to detect the cause

○ Huge variability in instance performance that are almost impossible to explain.

○ Network barriers○ Multi tenancy○ Firewalls

● Very limited access to information/ ability to fix issues

Page 126: Edge architecture   ieee international conference on cloud engineering

Software focus: Cloud’s greatest strength

● Scale our business● Automate processes● Radically experiment● Remain resilient● Move quickly

Page 127: Edge architecture   ieee international conference on cloud engineering

Netflix Culture - Our secret sauce

● Freedom and responsibility● Highly aligned teams● Aversion to process● Design for necessity● Design for failure● Engineering teams operating their services

Page 128: Edge architecture   ieee international conference on cloud engineering

Netflix OSS

● Zuul - Smart edge router● RxJava - Functional reactive libraries● Hystrix - SOA resiliency● + a lot more!

Page 129: Edge architecture   ieee international conference on cloud engineering

For more Info on Netflix Cloud Technology:

Read our Technology Blog : http://techblog.netflix.com/ Check out our Open Source Cloud Projects : http://netflix.github.io