Slides from the April 27th, 2016 Milwaukee Java Meetup held at DigitalMeasures in Milwaukee WI.
Example code and configuration at:
https://github.com/shall11672/mkej-config
https://github.com/shall11672/mkej-configServer
https://github.com/shall11672/mkej-eurekaService
https://github.com/shall11672/mkej-greetingService
https://github.com/shall11672/mkej-menuService
https://github.com/shall11672/mkej-apiGateway
https://github.com/shall11672/mkej-monitoringApplication
2. HI! I'M STEVE HALL
Java Developer since '98
@Centare since '11
Follow me @MarkOfHall
Let's connect on LinkedIn
3.
4. NETFLIX ARCHITECTURE
Multi-Region AWS Deployment
Java based Microservices style Architecture
Continuous Integration and Delivery pipeline
Tools and Libraries that reduce frictionDave Hahn: A Day in the Life of a Netflix Engineer
5. NETFLIX CULTURE
Freedom and Responsiblity
DevOps Culture
Products not Projects
Pizza sized teams
Conway's Law (Inverse)
Adrian Cockcro : State of the Art in Microservices
6. WHAT'S A MICROSERVICE?
"A light-weight, loosely-coupled, service oriented
architecture with bounded contexts" Adrian Cockcro
"Applications that fit in your head" James Lewis
"smart endpoints with dumb pipes" Martin Fowler
10. THINGS TO CONSIDER
How will we manage service configuration?
How will services find other services?
How will clients handle communication?
What happens when things fail?
How will we monitor our services?
11. NETFLIX OSS
Big Data
Build and Delivery Tools
Common Runtime Services &
Libraries
Data Persistence
Insight, Reliability and Performance
Security
User Interface
12. SERVICES & LIBRARIES
Eureka : Service Discovery
Zuul : Request Router / API
Gateway
Ribbon : Client Side Load Balancing
Hystrix : Circuit Breaker
Turbine : Event Stream Aggregator
13. SPRING CLOUD
"Spring Cloud provides tools for developers to quickly build
some of the common patterns in distributed systems."
26. NETFLIX SCALE
Multi-Region AWS deployment
100s of Java based Microservices
10,000s of EC2 instances
1000s of daily production deployments
100,000s customer interactions per minute
1,000,000s customers
1,000,000,000s of metrics
10,000,000,000s hour of content streamedDave Hahn: A Day in the Life of a Netflix Engineer
27. NETFLIX'S JOURNEY TO CLOUD
2007 Begin Internet Streaming
2008 Datacenter hardware failure
2009 Start migration to AWS
2010 First devices talking to AWS US
East
2011-2012 European Deployments
2013 US West 2
2013 Open Source Netflix OSS
2015 Migration complete