SlideShare una empresa de Scribd logo
1 de 78
Descargar para leer sin conexión
State of the Art in Microservices 
1
! 
Adrian Cockcroft - Battery Ventures - @adrianco 
! 
Speeding up Development 
Microservice Architectures 
What’s Next
Cloud Adoption 
%*&!” 
By Simon Wardley http://enterpriseitadoption.com/
Cloud Adoption 
%*&!” 
2009 
By Simon Wardley http://enterpriseitadoption.com/
Cloud Adoption 
%*&!” 
2009 
By Simon Wardley http://enterpriseitadoption.com/
Cloud Adoption 
@adrianco’s job at the 
intersection of cloud 
and Enterprise IT 
%*&!” 
By Simon Wardley http://enterpriseitadoption.com/ 
2014 
2009
Cloud Adoption 
@adrianco’s job at the 
intersection of cloud 
and Enterprise IT 
%*&!” 
By Simon Wardley http://enterpriseitadoption.com/ 
2014 
2009 
Docker wasn’t on 
anyone’s roadmap for 
2014. It’s on everyone’s 
roadmap for 2015.
Product 
Development 
Processes
Observe 
Orient 
Act Continuous 
Delivery 
Decide
Land grab 
opportunity Competitive 
Observe 
Orient 
Decide 
Act 
Move 
Customer Pain 
Point 
Measure 
Customers 
Continuous 
Delivery
Land grab 
opportunity Competitive 
Observe 
Orient 
Decide 
Act 
Move 
Customer Pain 
Point 
INNOVATION 
Measure 
Customers 
Continuous 
Delivery
Land grab 
opportunity Competitive 
Observe 
Orient 
Decide 
Act 
Move 
Customer Pain 
Point 
Analysis 
Model 
Hypotheses 
INNOVATION 
Measure 
Customers 
Continuous 
Delivery
Land grab 
opportunity Competitive 
Observe 
Orient 
Decide 
Act 
Move 
Customer Pain 
Point 
Analysis 
BIG DATA 
Model 
Hypotheses 
INNOVATION 
Measure 
Customers 
Continuous 
Delivery
Land grab 
opportunity Competitive 
Observe 
Orient 
Decide 
Act 
Move 
Customer Pain 
Point 
Analysis 
BIG DATA 
Plan Response 
JFDI 
Share Plans 
Model 
Hypotheses 
INNOVATION 
Measure 
Customers 
Continuous 
Delivery
Land grab 
opportunity Competitive 
Observe 
Orient 
Decide 
Act 
Move 
Customer Pain 
Point 
Analysis 
BIG DATA 
Plan Response 
JFDI 
Share Plans 
Model 
Hypotheses 
INNOVATION 
CULTURE 
Measure 
Customers 
Continuous 
Delivery
Land grab 
opportunity Competitive 
Observe 
Orient 
Decide 
Act 
Move 
Customer Pain 
Point 
Analysis 
BIG DATA 
Plan Response 
JFDI 
Share Plans 
Launch AB 
Test 
Automatic 
Deploy 
Incremental 
Features 
Model 
Hypotheses 
INNOVATION 
CULTURE 
Measure 
Customers 
Continuous 
Delivery
Land grab 
opportunity Competitive 
Observe 
Orient 
Decide 
Measure 
Customers 
Act 
Move 
Customer Pain 
Point 
Analysis 
BIG DATA 
Plan Response 
JFDI 
Share Plans 
Launch AB 
Test 
Automatic 
Deploy 
Incremental 
Features 
Model 
Hypotheses 
INNOVATION 
CULTURE 
CLOUD 
Continuous 
Delivery
Land grab 
opportunity Competitive 
Observe 
Orient 
Decide 
Measure 
Customers 
Act 
Move 
Customer Pain 
Point 
Analysis 
BIG DATA 
Plan Response 
JFDI 
Share Plans 
Launch AB 
Test 
Automatic 
Deploy 
Incremental 
Features 
Model 
Hypotheses 
INNOVATION 
CULTURE 
CLOUD 
Continuous 
Delivery
Land grab 
opportunity Competitive 
Observe 
Orient 
Decide 
Measure 
Customers 
Act 
Move 
Customer Pain 
Point 
Analysis 
BIG DATA 
Plan Response 
JFDI 
Share Plans 
Launch AB 
Test 
Automatic 
Deploy 
Incremental 
Features 
Model 
Hypotheses 
INNOVATION 
CULTURE 
CLOUD 
Continuous 
Delivery
Breaking Down the SILOs
Breaking Down the SILOs 
Prod 
Mgr 
UX Dev QA DBA Sys 
Adm Adm 
Net 
Adm 
SAN
Breaking Down the SILOs 
Prod 
Mgr 
UX Dev QA DBA Sys 
Adm Adm 
Net 
Adm 
SAN 
Product Team Using Monolithic Delivery 
Product Team Using Monolithic Delivery
Breaking Down the SILOs 
Product Team Using Monolithic Delivery 
Product Team Using Monolithic Delivery 
Prod 
Mgr 
UX Dev QA DBA Sys 
Adm Adm 
Net 
Adm 
SAN 
Product Team Using Microservices 
Product Team Using Microservices 
Product Team Using Microservices
Breaking Down the SILOs 
Product Team Using Monolithic Delivery 
Product Team Using Monolithic Delivery 
Prod 
Mgr 
UX Dev QA DBA Sys 
Adm Adm 
Net 
Adm 
SAN 
Product Team Using Microservices 
Product Team Using Microservices Platform Team 
Product Team Using Microservices
Breaking Down the SILOs 
Product Team Using Monolithic Delivery 
Product Team Using Monolithic Delivery 
Prod 
Mgr 
UX Dev QA DBA Sys 
Adm Adm 
Net 
Adm 
SAN 
Product Team Using Microservices 
Platform Team 
A 
P 
I Product Team Using Microservices 
Product Team Using Microservices
Breaking Down the SILOs 
Product Team Using Monolithic Delivery 
Product Team Using Monolithic Delivery 
Prod 
Mgr 
UX Dev QA DBA Sys 
Adm Adm 
Net 
Adm 
SAN 
Product Team Using Microservices 
Platform Team 
A 
P 
I Product Team Using Microservices 
Product Team Using Microservices 
DevOps is a Re-Org!
Release Plan 
Developer 
Developer 
Developer 
Developer 
Developer 
QA Release 
Integration 
Ops Replace Old 
With New 
Release 
Monolithic service updates 
Works well with a small number 
of developers and a single 
language like php, java or ruby
Release Plan 
Developer 
Developer 
Developer 
Developer 
Developer 
Monolithic service updates 
QA Release 
Integration 
Ops Replace Old 
With New 
Release 
Bugs 
Works well with a small number 
of developers and a single 
language like php, java or ruby
Release Plan 
Developer 
Developer 
Developer 
Developer 
Developer 
Monolithic service updates 
QA Release 
Integration 
Ops Replace Old 
With New 
Release 
Bugs 
Bugs 
Works well with a small number 
of developers and a single 
language like php, java or ruby
Developer 
Developer 
Developer 
Developer 
Developer 
Old Release Still 
Running 
Release Plan 
Release Plan 
Release Plan 
Release Plan 
Immutable microservice deployment 
scales, is faster with large teams and 
diverse platform components
Developer 
Developer 
Developer 
Developer 
Developer 
Immutable microservice deployment 
scales, is faster with large teams and 
diverse platform components 
Old Release Still 
Running 
Release Plan 
Release Plan 
Release Plan 
Release Plan 
Deploy 
Feature to 
Production 
Deploy 
Feature to 
Production 
Deploy 
Feature to 
Production 
Deploy 
Feature to 
Production
Developer 
Developer 
Developer 
Developer 
Developer 
Immutable microservice deployment 
scales, is faster with large teams and 
diverse platform components 
Old Release Still 
Running 
Release Plan 
Release Plan 
Release Plan 
Release Plan 
Deploy 
Feature to 
Production 
Deploy 
Feature to 
Production 
Deploy 
Feature to 
Production 
Deploy 
Feature to 
Production 
Bugs
Developer 
Developer 
Developer 
Developer 
Developer 
Immutable microservice deployment 
scales, is faster with large teams and 
diverse platform components 
Old Release Still 
Running 
Release Plan 
Release Plan 
Release Plan 
Release Plan 
Deploy 
Feature to 
Production 
Deploy 
Feature to 
Production 
Deploy 
Feature to 
Production 
Deploy 
Feature to 
Production 
Bugs 
Deploy 
Feature to 
Production
Configure 
Configure 
Developer 
Developer 
Developer 
Release Plan 
Release Plan 
Release Plan 
Standardized portable container 
deployment saves time and effort 
Deploy 
Standardized 
Services 
https://hub.docker.com
Configure 
Configure 
Developer 
Developer 
Developer 
Release Plan 
Release Plan 
Release Plan 
Deploy 
Standardized 
Services 
Deploy 
Feature to 
Production 
Deploy 
Feature to 
Production 
Deploy 
Feature to 
Production 
Bugs 
Deploy 
Feature to 
Production 
Standardized portable container 
deployment saves time and effort 
https://hub.docker.com
Developing at the Speed of Docker 
Developers 
• Compile/Build 
• Seconds 
Extend container 
• Package dependencies 
• Seconds 
PaaS deploy Container 
• Docker startup 
• Seconds
Developing at the Speed of Docker 
Developers 
• Compile/Build 
• Seconds 
Extend container 
• Package dependencies 
• Seconds 
PaaS deploy Container 
• Docker startup 
• Seconds 
Speed is addictive, hard to go back to taking much longer to get things done
What Happened? 
Rate of change 
increased 
Cost and size and 
risk of change 
reduced
Disruptor: 
Continuous Delivery with 
Containerized Microservices
Microservices
A Microservice Definition 
! 
Loosely coupled service oriented 
architecture with bounded contexts
If every service has to be 
updated at the same time 
it’s not loosely coupled 
A Microservice Definition 
! 
Loosely coupled service oriented 
architecture with bounded contexts
If every service has to be 
updated at the same time 
it’s not loosely coupled 
A Microservice Definition 
! 
Loosely coupled service oriented 
architecture with bounded contexts 
If you have to know too much about surrounding 
services you don’t have a bounded context. See the 
Domain Driven Design book by Eric Evans.
Coupling Concerns 
●Conway’s Law - organizational coupling 
●Centralized Database Schemas 
●Enterprise Service Bus - centralized message queues 
●Inflexible Protocol Versioning 
http://en.wikipedia.org/wiki/Conway's_law
Speeding Up The Platform 
Datacenter Snowflakes 
• Deploy in months 
• Live for years
Speeding Up The Platform 
Datacenter Snowflakes 
• Deploy in months 
• Live for years 
Virtualized and Cloud 
• Deploy in minutes 
• Live for weeks
Speeding Up The Platform 
Datacenter Snowflakes 
• Deploy in months 
• Live for years 
Virtualized and Cloud 
• Deploy in minutes 
• Live for weeks 
Docker Containers 
• Deploy in seconds 
• Live for minutes/hours
Speeding Up The Platform 
Datacenter Snowflakes 
• Deploy in months 
• Live for years 
Virtualized and Cloud 
• Deploy in minutes 
• Live for weeks 
Docker Containers 
• Deploy in seconds 
• Live for minutes/hours 
AWS Lambda 
• Deploy in milliseconds 
• Live for seconds
Speeding Up The Platform 
Datacenter Snowflakes 
• Deploy in months 
• Live for years 
Virtualized and Cloud 
• Deploy in minutes 
• Live for weeks 
Docker Containers 
• Deploy in seconds 
• Live for minutes/hours 
AWS Lambda 
• Deploy in milliseconds 
• Live for seconds 
Speed enables and encourages new microservice architectures
State of the Art in Web Scale 
Microservice Architectures 
AWS Re:Invent : Asgard to Zuul https://www.youtube.com/watch?v=p7ysHhs5hl0 
Resiliency at Massive Scale https://www.youtube.com/watch?v=ZfYJHtVL1_w 
Microservice Architecture https://www.youtube.com/watch?v=CriDUYtfrjs 
http://www.infoq.com/presentations/scale-gilt 
http://www.slideshare.net/mcculloughsean/itier-breaking-up-the-monolith-philly-ete 
http://www.infoq.com/presentations/Twitter-Timeline-Scalability 
http://www.infoq.com/presentations/twitter-soa 
http://www.infoq.com/presentations/Zipkin 
https://speakerdeck.com/mattheath/scaling-micro-services-in-go-highload-plus-plus-2014
Microservice Concerns 
Tooling Configuration Discovery Routing Observability 
Datastores 
Operational: Orchestration and Deployment Infrastructure 
Development: Languages and Container
Microservices 
Edda 
Archaius 
! 
Configuration 
Asgard 
Aminator 
! 
Tooling 
Eureka 
Prana 
! 
Discovery 
Denominator 
Zuul, Netty 
Ribbon 2.0 
! 
Routing 
Hystrix 
Pytheus 
SALP 
! 
Observability 
Ephemeral datastores using Dynomite, Memcached, Astyanax, Staash, Priam, Cassandra 
Manual Orchestration with Asgard and deployment on AWS or Eucalyptus 
Java, Groovy, Scala, Clojure, Python, Node.js with AMI and Docker Containers
Microservices 
Edda 
Archaius 
! 
Configuration 
Asgard 
Aminator 
! 
Tooling 
Eureka 
Prana 
! 
Discovery 
Denominator 
Zuul, Netty 
Ribbon 2.0 
! 
Routing 
Hystrix 
Pytheus 
SALP 
! 
Observability 
Ephemeral datastores using Dynomite, Memcached, Astyanax, Staash, Priam, Cassandra 
Manual Orchestration with Asgard and deployment on AWS or Eucalyptus 
Java, Groovy, Scala, Clojure, Python, Node.js with AMI and Docker Containers 
Focus on global distribution, high scale and availability
Twitter Microservices 
Decider 
!! 
Tooling Configuration 
Finagle 
Zookeeper 
! 
Discovery 
Finagle 
Netty 
! 
Routing 
Zipkin 
!! 
Observability 
Custom Cassandra-like datastore: Manhattan 
Orchestration using Aurora deployment in datacenters using Mesos 
Scala with JVM Container
Twitter Microservices 
Decider 
!! 
Tooling Configuration 
Finagle 
Zookeeper 
! 
Discovery 
Finagle 
Netty 
! 
Routing 
Zipkin 
!! 
Observability 
Custom Cassandra-like datastore: Manhattan 
Orchestration using Aurora deployment in datacenters using Mesos 
Scala with JVM Container 
Focus on efficient datacenter deployment at scale
Gilt Microservices 
Decider 
!! 
Configuration 
Ion Cannon 
SBT 
Rake 
! 
Tooling 
Finagle 
Zookeeper 
! 
Discovery 
Akka 
Finagle 
Netty 
! 
Routing 
Zipkin 
!! 
Observability 
Datastores per Microservice using MongoDB, Postgres, Voldemort 
Deployment on AWS 
Scala and Ruby with Docker Containers
Gilt Microservices 
Decider 
!! 
Configuration 
Ion Cannon 
SBT 
Rake 
! 
Tooling 
Finagle 
Zookeeper 
! 
Discovery 
Akka 
Finagle 
Netty 
! 
Routing 
Zipkin 
!! 
Observability 
Datastores per Microservice using MongoDB, Postgres, Voldemort 
Deployment on AWS 
Scala and Ruby with Docker Containers 
Focus on fast development with Scala and Docker
Hailo Microservices 
Configuration 
Hubot 
Janky 
Jenkins 
! 
Tooling 
go-platform 
! 
Discovery 
go-platform 
RabbitMQ 
! 
Routing 
Request trace 
! 
Observability 
Datastore based on Cassandra 
Deployment on AWS 
Go using Docker
Hailo Microservices 
Configuration 
Hubot 
Janky 
Jenkins 
! 
Tooling 
go-platform 
! 
Discovery 
go-platform 
RabbitMQ 
! 
Routing 
Request trace 
! 
Observability 
Datastore based on Cassandra 
Deployment on AWS 
Go using Docker 
Focus on fast development at scale using Go
Node.js Microservices 
Several different approaches 
! 
Mostly small simple microservices 
! 
Focus on easy interface with 
presentation code in javascript 
! 
AWS Lambda - preview only 
http://senecajs.org/ 
http://aws.amazon.com/lambda/
Adrian’s Prototypes 
Model and visualize microservices 
Simulate interesting architectures 
! 
See github.com/adrianco/spigo 
Simulate Protocol Interactions in Go 
! 
See github.com/adrianco/d3grow 
Dynamic visualization
Web Scale Characteristics 
●Brand new Microservices are deployed infrequently 
●New versions deployed automatically/frequently 
●No real need for general purpose orchestration 
●Architectures use hundreds of microservices 
●Each deployment is heavily customized
What’s Next?
Orchestration for Applications 
●Standard portable microservice based applications 
●New versions deployed automatically/frequently 
●Orchestration automated and standardized 
●Architectures likely based on tens of microservices 
●Opportunity: Docker Hub as the enterprise app store
Next Generation Applications 
? 
! 
Configuration 
? 
! 
Tooling 
? 
! 
Discovery 
? 
! 
Routing 
? 
! 
Observability 
Datastores: Ephemeral, Orchestrated or DBaaS 
Operational: Many orchestration choices across public and private clouds 
Development: Components assembled from Docker Hub as a composable “app store”
Next Generation Applications 
? 
! 
Configuration 
? 
! 
Tooling 
? 
! 
Discovery 
? 
! 
Routing 
? 
! 
Observability 
Datastores: Ephemeral, Orchestrated or DBaaS 
Operational: Many orchestration choices across public and private clouds 
Development: Components assembled from Docker Hub as a composable “app store” 
Fill in the gaps, rapidly evolving ecosystem choices
Forward Thinking
Forward Thinking
Forward Thinking
Forward Thinking 
http://eugenedvorkin.com/seven-micro-services-architecture-advantages/
Any Questions? 
● Battery Ventures http://www.battery.com 
● Adrian’s Tweets @adrianco and Blog http://perfcap.blogspot.com 
● Slideshare http://slideshare.com/adriancockcroft 
! 
● Monitorama Opening Keynote Portland OR - May 7th, 2014 - Video available 
● GOTO Chicago Opening Keynote May 20th, 2014 - Video available 
● Qcon New York – Speed and Scale - June 11th, 2014 - Video available 
● Structure - Cloud Trends - San Francisco - June 19th, 2014 - Video available 
● GOTO Copenhagen/Aarhus – Fast Delivery - Denmark – Sept 25th, 2014 
● DevOps Enterprise Summit - San Francisco - Oct 21-23rd, 2014 #DOES14 - Videos available 
● GOTO Berlin - Migrating to Microservices - Germany - Nov 6th, 2014 
● AWS Re:Invent - Cloud Native Cost Optimization - Las Vegas - November 14th, 2014 
Disclosure: some of the companies mentioned may be Battery Ventures Portfolio Companies 
See www.battery.com for a list of portfolio investments
Thank You. 
36

Más contenido relacionado

La actualidad más candente

Getting Started with Infrastructure as Code
Getting Started with Infrastructure as CodeGetting Started with Infrastructure as Code
Getting Started with Infrastructure as CodeWinWire Technologies Inc
 
Microsoft Azure Cloud Services
Microsoft Azure Cloud ServicesMicrosoft Azure Cloud Services
Microsoft Azure Cloud ServicesDavid J Rosenthal
 
Landing Zones Creating a Foundation - AWS Summit Sydney 2018
Landing Zones Creating a Foundation - AWS Summit Sydney 2018Landing Zones Creating a Foundation - AWS Summit Sydney 2018
Landing Zones Creating a Foundation - AWS Summit Sydney 2018Amazon Web Services
 
Getting Started with Azure DevOps
Getting Started with Azure DevOpsGetting Started with Azure DevOps
Getting Started with Azure DevOpsJessica Deen
 
Creating the Cloud Business Case
Creating the Cloud Business CaseCreating the Cloud Business Case
Creating the Cloud Business CaseAmazon Web Services
 
Mashing Up DevOps with Cloud Computing
Mashing Up DevOps with Cloud ComputingMashing Up DevOps with Cloud Computing
Mashing Up DevOps with Cloud ComputingDavid Linthicum
 
Matthew Skelton_What is Platform as a Product_ Clues from Team Topologies - D...
Matthew Skelton_What is Platform as a Product_ Clues from Team Topologies - D...Matthew Skelton_What is Platform as a Product_ Clues from Team Topologies - D...
Matthew Skelton_What is Platform as a Product_ Clues from Team Topologies - D...VMware Tanzu
 
Cloud monitoring
Cloud monitoringCloud monitoring
Cloud monitoringGang Tao
 
Amazon QuickSight First Call Deck
Amazon QuickSight First Call DeckAmazon QuickSight First Call Deck
Amazon QuickSight First Call DeckAmazon Web Services
 
How to Split Your System into Microservices
How to Split Your System into MicroservicesHow to Split Your System into Microservices
How to Split Your System into MicroservicesEberhard Wolff
 
Microservices, Containers, Kubernetes, Kafka, Kanban
Microservices, Containers, Kubernetes, Kafka, KanbanMicroservices, Containers, Kubernetes, Kafka, Kanban
Microservices, Containers, Kubernetes, Kafka, KanbanAraf Karsh Hamid
 
Introduction to AWS Organizations
Introduction to AWS OrganizationsIntroduction to AWS Organizations
Introduction to AWS OrganizationsAmazon Web Services
 
Azure DevOps CI/CD For Beginners
Azure DevOps CI/CD  For BeginnersAzure DevOps CI/CD  For Beginners
Azure DevOps CI/CD For BeginnersRahul Nath
 
The People's Innovation Platform - Microsoft Power Platform
    The People's Innovation Platform - Microsoft Power Platform    The People's Innovation Platform - Microsoft Power Platform
The People's Innovation Platform - Microsoft Power PlatformKorcomptenz Inc
 
The What, Why, and How of DevSecOps
The What, Why, and How of DevSecOpsThe What, Why, and How of DevSecOps
The What, Why, and How of DevSecOpsCprime
 

La actualidad más candente (20)

Getting Started with Infrastructure as Code
Getting Started with Infrastructure as CodeGetting Started with Infrastructure as Code
Getting Started with Infrastructure as Code
 
Multi tenant architecture
Multi tenant architectureMulti tenant architecture
Multi tenant architecture
 
Microsoft Azure Cloud Services
Microsoft Azure Cloud ServicesMicrosoft Azure Cloud Services
Microsoft Azure Cloud Services
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Landing Zones Creating a Foundation - AWS Summit Sydney 2018
Landing Zones Creating a Foundation - AWS Summit Sydney 2018Landing Zones Creating a Foundation - AWS Summit Sydney 2018
Landing Zones Creating a Foundation - AWS Summit Sydney 2018
 
Getting Started with Azure DevOps
Getting Started with Azure DevOpsGetting Started with Azure DevOps
Getting Started with Azure DevOps
 
Creating the Cloud Business Case
Creating the Cloud Business CaseCreating the Cloud Business Case
Creating the Cloud Business Case
 
Mashing Up DevOps with Cloud Computing
Mashing Up DevOps with Cloud ComputingMashing Up DevOps with Cloud Computing
Mashing Up DevOps with Cloud Computing
 
Matthew Skelton_What is Platform as a Product_ Clues from Team Topologies - D...
Matthew Skelton_What is Platform as a Product_ Clues from Team Topologies - D...Matthew Skelton_What is Platform as a Product_ Clues from Team Topologies - D...
Matthew Skelton_What is Platform as a Product_ Clues from Team Topologies - D...
 
Cloud monitoring
Cloud monitoringCloud monitoring
Cloud monitoring
 
Amazon QuickSight First Call Deck
Amazon QuickSight First Call DeckAmazon QuickSight First Call Deck
Amazon QuickSight First Call Deck
 
How to Split Your System into Microservices
How to Split Your System into MicroservicesHow to Split Your System into Microservices
How to Split Your System into Microservices
 
Azure DevOps
Azure DevOpsAzure DevOps
Azure DevOps
 
Microservices, Containers, Kubernetes, Kafka, Kanban
Microservices, Containers, Kubernetes, Kafka, KanbanMicroservices, Containers, Kubernetes, Kafka, Kanban
Microservices, Containers, Kubernetes, Kafka, Kanban
 
Introduction to AWS Organizations
Introduction to AWS OrganizationsIntroduction to AWS Organizations
Introduction to AWS Organizations
 
Azure DevOps CI/CD For Beginners
Azure DevOps CI/CD  For BeginnersAzure DevOps CI/CD  For Beginners
Azure DevOps CI/CD For Beginners
 
The People's Innovation Platform - Microsoft Power Platform
    The People's Innovation Platform - Microsoft Power Platform    The People's Innovation Platform - Microsoft Power Platform
The People's Innovation Platform - Microsoft Power Platform
 
Migrating to the Cloud
Migrating to the CloudMigrating to the Cloud
Migrating to the Cloud
 
The What, Why, and How of DevSecOps
The What, Why, and How of DevSecOpsThe What, Why, and How of DevSecOps
The What, Why, and How of DevSecOps
 
infrastructure as code
infrastructure as codeinfrastructure as code
infrastructure as code
 

Similar a Dockercon State of the Art in Microservices

Cloud Native Cost Optimization UCC
Cloud Native Cost Optimization UCCCloud Native Cost Optimization UCC
Cloud Native Cost Optimization UCCAdrian Cockcroft
 
Microservices the Good Bad and the Ugly
Microservices the Good Bad and the UglyMicroservices the Good Bad and the Ugly
Microservices the Good Bad and the UglyAdrian Cockcroft
 
When Developers Operate and Operators Develop
When Developers Operate and Operators DevelopWhen Developers Operate and Operators Develop
When Developers Operate and Operators DevelopAdrian Cockcroft
 
Fast Delivery DevOps Israel
Fast Delivery DevOps IsraelFast Delivery DevOps Israel
Fast Delivery DevOps IsraelAdrian Cockcroft
 
Monktoberfest Fast Delivery
Monktoberfest Fast DeliveryMonktoberfest Fast Delivery
Monktoberfest Fast DeliveryAdrian Cockcroft
 
StackEngine Problem Space Demo
StackEngine Problem Space DemoStackEngine Problem Space Demo
StackEngine Problem Space DemoBoyd Hemphill
 
Vasiliy Fomichev - Harness the Power of Containers - SUGCON
Vasiliy Fomichev - Harness the Power of Containers - SUGCONVasiliy Fomichev - Harness the Power of Containers - SUGCON
Vasiliy Fomichev - Harness the Power of Containers - SUGCONSUGCON
 
Impact of CD, Clean Code, ... on Team Performance
Impact of CD, Clean Code, ... on Team PerformanceImpact of CD, Clean Code, ... on Team Performance
Impact of CD, Clean Code, ... on Team PerformanceFredrik Wendt
 
Keep calms and Docker On ... Innotech
Keep calms and Docker On ... InnotechKeep calms and Docker On ... Innotech
Keep calms and Docker On ... InnotechBoyd Hemphill
 
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsDevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsAmazon Web Services
 
Docker Enables DevOps - Boston
Docker Enables DevOps - BostonDocker Enables DevOps - Boston
Docker Enables DevOps - BostonBoyd Hemphill
 
Microservices: State of the Union
Microservices: State of the UnionMicroservices: State of the Union
Microservices: State of the UnionC4Media
 
Docker Enables DevOps - Keep C.A.L.M.S. and Docker on ...
Docker Enables DevOps - Keep C.A.L.M.S. and Docker on ...Docker Enables DevOps - Keep C.A.L.M.S. and Docker on ...
Docker Enables DevOps - Keep C.A.L.M.S. and Docker on ...Boyd Hemphill
 
DCEU 18: How To Build Your Containerization Strategy
DCEU 18: How To Build Your Containerization StrategyDCEU 18: How To Build Your Containerization Strategy
DCEU 18: How To Build Your Containerization StrategyDocker, Inc.
 
On The Road towards Continuous Delivery
On The Road towards Continuous DeliveryOn The Road towards Continuous Delivery
On The Road towards Continuous DeliveryMyToys Group IT
 
InterConnect 2015: 3962 Docking DevOps
InterConnect 2015: 3962 Docking DevOpsInterConnect 2015: 3962 Docking DevOps
InterConnect 2015: 3962 Docking DevOpsDaniel Berg
 
GCP Meetup #3 - Approaches to Cloud Native Architectures
GCP Meetup #3 - Approaches to Cloud Native ArchitecturesGCP Meetup #3 - Approaches to Cloud Native Architectures
GCP Meetup #3 - Approaches to Cloud Native Architecturesnine
 

Similar a Dockercon State of the Art in Microservices (20)

Cloud Native Cost Optimization UCC
Cloud Native Cost Optimization UCCCloud Native Cost Optimization UCC
Cloud Native Cost Optimization UCC
 
Microxchg Microservices
Microxchg MicroservicesMicroxchg Microservices
Microxchg Microservices
 
Microservices the Good Bad and the Ugly
Microservices the Good Bad and the UglyMicroservices the Good Bad and the Ugly
Microservices the Good Bad and the Ugly
 
When Developers Operate and Operators Develop
When Developers Operate and Operators DevelopWhen Developers Operate and Operators Develop
When Developers Operate and Operators Develop
 
Fast Delivery DevOps Israel
Fast Delivery DevOps IsraelFast Delivery DevOps Israel
Fast Delivery DevOps Israel
 
Monktoberfest Fast Delivery
Monktoberfest Fast DeliveryMonktoberfest Fast Delivery
Monktoberfest Fast Delivery
 
StackEngine Problem Space Demo
StackEngine Problem Space DemoStackEngine Problem Space Demo
StackEngine Problem Space Demo
 
Vasiliy Fomichev - Harness the Power of Containers - SUGCON
Vasiliy Fomichev - Harness the Power of Containers - SUGCONVasiliy Fomichev - Harness the Power of Containers - SUGCON
Vasiliy Fomichev - Harness the Power of Containers - SUGCON
 
Impact of CD, Clean Code, ... on Team Performance
Impact of CD, Clean Code, ... on Team PerformanceImpact of CD, Clean Code, ... on Team Performance
Impact of CD, Clean Code, ... on Team Performance
 
The Future of Cloud Innovation, featuring Adrian Cockcroft
The Future of Cloud Innovation, featuring Adrian CockcroftThe Future of Cloud Innovation, featuring Adrian Cockcroft
The Future of Cloud Innovation, featuring Adrian Cockcroft
 
Keep calms and Docker On ... Innotech
Keep calms and Docker On ... InnotechKeep calms and Docker On ... Innotech
Keep calms and Docker On ... Innotech
 
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsDevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
 
Docker Enables DevOps - Boston
Docker Enables DevOps - BostonDocker Enables DevOps - Boston
Docker Enables DevOps - Boston
 
Microservices: State of the Union
Microservices: State of the UnionMicroservices: State of the Union
Microservices: State of the Union
 
Docker Enables DevOps - Keep C.A.L.M.S. and Docker on ...
Docker Enables DevOps - Keep C.A.L.M.S. and Docker on ...Docker Enables DevOps - Keep C.A.L.M.S. and Docker on ...
Docker Enables DevOps - Keep C.A.L.M.S. and Docker on ...
 
gopaddle-meetup
gopaddle-meetupgopaddle-meetup
gopaddle-meetup
 
DCEU 18: How To Build Your Containerization Strategy
DCEU 18: How To Build Your Containerization StrategyDCEU 18: How To Build Your Containerization Strategy
DCEU 18: How To Build Your Containerization Strategy
 
On The Road towards Continuous Delivery
On The Road towards Continuous DeliveryOn The Road towards Continuous Delivery
On The Road towards Continuous Delivery
 
InterConnect 2015: 3962 Docking DevOps
InterConnect 2015: 3962 Docking DevOpsInterConnect 2015: 3962 Docking DevOps
InterConnect 2015: 3962 Docking DevOps
 
GCP Meetup #3 - Approaches to Cloud Native Architectures
GCP Meetup #3 - Approaches to Cloud Native ArchitecturesGCP Meetup #3 - Approaches to Cloud Native Architectures
GCP Meetup #3 - Approaches to Cloud Native Architectures
 

Más de Adrian Cockcroft

Microservices Workshop All Topics Deck 2016
Microservices Workshop All Topics Deck 2016Microservices Workshop All Topics Deck 2016
Microservices Workshop All Topics Deck 2016Adrian Cockcroft
 
Gophercon 2016 Communicating Sequential Goroutines
Gophercon 2016 Communicating Sequential GoroutinesGophercon 2016 Communicating Sequential Goroutines
Gophercon 2016 Communicating Sequential GoroutinesAdrian Cockcroft
 
Monitoring Challenges - Monitorama 2016 - Monitoringless
Monitoring Challenges - Monitorama 2016 - MonitoringlessMonitoring Challenges - Monitorama 2016 - Monitoringless
Monitoring Challenges - Monitorama 2016 - MonitoringlessAdrian Cockcroft
 
Microservices Application Tracing Standards and Simulators - Adrians at OSCON
Microservices Application Tracing Standards and Simulators - Adrians at OSCONMicroservices Application Tracing Standards and Simulators - Adrians at OSCON
Microservices Application Tracing Standards and Simulators - Adrians at OSCONAdrian Cockcroft
 
Microservices Workshop - Craft Conference
Microservices Workshop - Craft ConferenceMicroservices Workshop - Craft Conference
Microservices Workshop - Craft ConferenceAdrian Cockcroft
 
Evolution of Microservices - Craft Conference
Evolution of Microservices - Craft ConferenceEvolution of Microservices - Craft Conference
Evolution of Microservices - Craft ConferenceAdrian Cockcroft
 
Microservices: What's Missing - O'Reilly Software Architecture New York
Microservices: What's Missing - O'Reilly Software Architecture New YorkMicroservices: What's Missing - O'Reilly Software Architecture New York
Microservices: What's Missing - O'Reilly Software Architecture New YorkAdrian Cockcroft
 
What's Missing? Microservices Meetup at Cisco
What's Missing? Microservices Meetup at CiscoWhat's Missing? Microservices Meetup at Cisco
What's Missing? Microservices Meetup at CiscoAdrian Cockcroft
 
Microxchg Analyzing Response Time Distributions for Microservices
Microxchg Analyzing Response Time Distributions for MicroservicesMicroxchg Analyzing Response Time Distributions for Microservices
Microxchg Analyzing Response Time Distributions for MicroservicesAdrian Cockcroft
 
Innovation and Architecture
Innovation and ArchitectureInnovation and Architecture
Innovation and ArchitectureAdrian Cockcroft
 
Cloud Trends Nov2015 Structure
Cloud Trends Nov2015 StructureCloud Trends Nov2015 Structure
Cloud Trends Nov2015 StructureAdrian Cockcroft
 
Openstack Silicon Valley - Vendor Lock In
Openstack Silicon Valley - Vendor Lock InOpenstack Silicon Valley - Vendor Lock In
Openstack Silicon Valley - Vendor Lock InAdrian Cockcroft
 
Dockercon 2015 - Faster Cheaper Safer
Dockercon 2015 - Faster Cheaper SaferDockercon 2015 - Faster Cheaper Safer
Dockercon 2015 - Faster Cheaper SaferAdrian Cockcroft
 
Gluecon Monitoring Microservices and Containers: A Challenge
Gluecon Monitoring Microservices and Containers: A ChallengeGluecon Monitoring Microservices and Containers: A Challenge
Gluecon Monitoring Microservices and Containers: A ChallengeAdrian Cockcroft
 
Software Architecture Conference - Monitoring Microservices - A Challenge
Software Architecture Conference -  Monitoring Microservices - A ChallengeSoftware Architecture Conference -  Monitoring Microservices - A Challenge
Software Architecture Conference - Monitoring Microservices - A ChallengeAdrian Cockcroft
 
Goto Berlin - Migrating to Microservices (Fast Delivery)
Goto Berlin - Migrating to Microservices (Fast Delivery)Goto Berlin - Migrating to Microservices (Fast Delivery)
Goto Berlin - Migrating to Microservices (Fast Delivery)Adrian Cockcroft
 
Cloud Native Cost Optimization
Cloud Native Cost OptimizationCloud Native Cost Optimization
Cloud Native Cost OptimizationAdrian Cockcroft
 
QCon New York - Migrating to Cloud Native with Microservices
QCon New York - Migrating to Cloud Native with MicroservicesQCon New York - Migrating to Cloud Native with Microservices
QCon New York - Migrating to Cloud Native with MicroservicesAdrian Cockcroft
 
Monitorama - Please, no more Minutes, Milliseconds, Monoliths or Monitoring T...
Monitorama - Please, no more Minutes, Milliseconds, Monoliths or Monitoring T...Monitorama - Please, no more Minutes, Milliseconds, Monoliths or Monitoring T...
Monitorama - Please, no more Minutes, Milliseconds, Monoliths or Monitoring T...Adrian Cockcroft
 

Más de Adrian Cockcroft (20)

Microservices Workshop All Topics Deck 2016
Microservices Workshop All Topics Deck 2016Microservices Workshop All Topics Deck 2016
Microservices Workshop All Topics Deck 2016
 
Gophercon 2016 Communicating Sequential Goroutines
Gophercon 2016 Communicating Sequential GoroutinesGophercon 2016 Communicating Sequential Goroutines
Gophercon 2016 Communicating Sequential Goroutines
 
Monitoring Challenges - Monitorama 2016 - Monitoringless
Monitoring Challenges - Monitorama 2016 - MonitoringlessMonitoring Challenges - Monitorama 2016 - Monitoringless
Monitoring Challenges - Monitorama 2016 - Monitoringless
 
Microservices Application Tracing Standards and Simulators - Adrians at OSCON
Microservices Application Tracing Standards and Simulators - Adrians at OSCONMicroservices Application Tracing Standards and Simulators - Adrians at OSCON
Microservices Application Tracing Standards and Simulators - Adrians at OSCON
 
Microservices Workshop - Craft Conference
Microservices Workshop - Craft ConferenceMicroservices Workshop - Craft Conference
Microservices Workshop - Craft Conference
 
Evolution of Microservices - Craft Conference
Evolution of Microservices - Craft ConferenceEvolution of Microservices - Craft Conference
Evolution of Microservices - Craft Conference
 
Microservices: What's Missing - O'Reilly Software Architecture New York
Microservices: What's Missing - O'Reilly Software Architecture New YorkMicroservices: What's Missing - O'Reilly Software Architecture New York
Microservices: What's Missing - O'Reilly Software Architecture New York
 
What's Missing? Microservices Meetup at Cisco
What's Missing? Microservices Meetup at CiscoWhat's Missing? Microservices Meetup at Cisco
What's Missing? Microservices Meetup at Cisco
 
In Search of Segmentation
In Search of SegmentationIn Search of Segmentation
In Search of Segmentation
 
Microxchg Analyzing Response Time Distributions for Microservices
Microxchg Analyzing Response Time Distributions for MicroservicesMicroxchg Analyzing Response Time Distributions for Microservices
Microxchg Analyzing Response Time Distributions for Microservices
 
Innovation and Architecture
Innovation and ArchitectureInnovation and Architecture
Innovation and Architecture
 
Cloud Trends Nov2015 Structure
Cloud Trends Nov2015 StructureCloud Trends Nov2015 Structure
Cloud Trends Nov2015 Structure
 
Openstack Silicon Valley - Vendor Lock In
Openstack Silicon Valley - Vendor Lock InOpenstack Silicon Valley - Vendor Lock In
Openstack Silicon Valley - Vendor Lock In
 
Dockercon 2015 - Faster Cheaper Safer
Dockercon 2015 - Faster Cheaper SaferDockercon 2015 - Faster Cheaper Safer
Dockercon 2015 - Faster Cheaper Safer
 
Gluecon Monitoring Microservices and Containers: A Challenge
Gluecon Monitoring Microservices and Containers: A ChallengeGluecon Monitoring Microservices and Containers: A Challenge
Gluecon Monitoring Microservices and Containers: A Challenge
 
Software Architecture Conference - Monitoring Microservices - A Challenge
Software Architecture Conference -  Monitoring Microservices - A ChallengeSoftware Architecture Conference -  Monitoring Microservices - A Challenge
Software Architecture Conference - Monitoring Microservices - A Challenge
 
Goto Berlin - Migrating to Microservices (Fast Delivery)
Goto Berlin - Migrating to Microservices (Fast Delivery)Goto Berlin - Migrating to Microservices (Fast Delivery)
Goto Berlin - Migrating to Microservices (Fast Delivery)
 
Cloud Native Cost Optimization
Cloud Native Cost OptimizationCloud Native Cost Optimization
Cloud Native Cost Optimization
 
QCon New York - Migrating to Cloud Native with Microservices
QCon New York - Migrating to Cloud Native with MicroservicesQCon New York - Migrating to Cloud Native with Microservices
QCon New York - Migrating to Cloud Native with Microservices
 
Monitorama - Please, no more Minutes, Milliseconds, Monoliths or Monitoring T...
Monitorama - Please, no more Minutes, Milliseconds, Monoliths or Monitoring T...Monitorama - Please, no more Minutes, Milliseconds, Monoliths or Monitoring T...
Monitorama - Please, no more Minutes, Milliseconds, Monoliths or Monitoring T...
 

Último

Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 

Último (20)

Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 

Dockercon State of the Art in Microservices

  • 1. State of the Art in Microservices 1
  • 2. ! Adrian Cockcroft - Battery Ventures - @adrianco ! Speeding up Development Microservice Architectures What’s Next
  • 3. Cloud Adoption %*&!” By Simon Wardley http://enterpriseitadoption.com/
  • 4. Cloud Adoption %*&!” 2009 By Simon Wardley http://enterpriseitadoption.com/
  • 5. Cloud Adoption %*&!” 2009 By Simon Wardley http://enterpriseitadoption.com/
  • 6. Cloud Adoption @adrianco’s job at the intersection of cloud and Enterprise IT %*&!” By Simon Wardley http://enterpriseitadoption.com/ 2014 2009
  • 7. Cloud Adoption @adrianco’s job at the intersection of cloud and Enterprise IT %*&!” By Simon Wardley http://enterpriseitadoption.com/ 2014 2009 Docker wasn’t on anyone’s roadmap for 2014. It’s on everyone’s roadmap for 2015.
  • 9. Observe Orient Act Continuous Delivery Decide
  • 10. Land grab opportunity Competitive Observe Orient Decide Act Move Customer Pain Point Measure Customers Continuous Delivery
  • 11. Land grab opportunity Competitive Observe Orient Decide Act Move Customer Pain Point INNOVATION Measure Customers Continuous Delivery
  • 12. Land grab opportunity Competitive Observe Orient Decide Act Move Customer Pain Point Analysis Model Hypotheses INNOVATION Measure Customers Continuous Delivery
  • 13. Land grab opportunity Competitive Observe Orient Decide Act Move Customer Pain Point Analysis BIG DATA Model Hypotheses INNOVATION Measure Customers Continuous Delivery
  • 14. Land grab opportunity Competitive Observe Orient Decide Act Move Customer Pain Point Analysis BIG DATA Plan Response JFDI Share Plans Model Hypotheses INNOVATION Measure Customers Continuous Delivery
  • 15. Land grab opportunity Competitive Observe Orient Decide Act Move Customer Pain Point Analysis BIG DATA Plan Response JFDI Share Plans Model Hypotheses INNOVATION CULTURE Measure Customers Continuous Delivery
  • 16. Land grab opportunity Competitive Observe Orient Decide Act Move Customer Pain Point Analysis BIG DATA Plan Response JFDI Share Plans Launch AB Test Automatic Deploy Incremental Features Model Hypotheses INNOVATION CULTURE Measure Customers Continuous Delivery
  • 17. Land grab opportunity Competitive Observe Orient Decide Measure Customers Act Move Customer Pain Point Analysis BIG DATA Plan Response JFDI Share Plans Launch AB Test Automatic Deploy Incremental Features Model Hypotheses INNOVATION CULTURE CLOUD Continuous Delivery
  • 18. Land grab opportunity Competitive Observe Orient Decide Measure Customers Act Move Customer Pain Point Analysis BIG DATA Plan Response JFDI Share Plans Launch AB Test Automatic Deploy Incremental Features Model Hypotheses INNOVATION CULTURE CLOUD Continuous Delivery
  • 19. Land grab opportunity Competitive Observe Orient Decide Measure Customers Act Move Customer Pain Point Analysis BIG DATA Plan Response JFDI Share Plans Launch AB Test Automatic Deploy Incremental Features Model Hypotheses INNOVATION CULTURE CLOUD Continuous Delivery
  • 21. Breaking Down the SILOs Prod Mgr UX Dev QA DBA Sys Adm Adm Net Adm SAN
  • 22. Breaking Down the SILOs Prod Mgr UX Dev QA DBA Sys Adm Adm Net Adm SAN Product Team Using Monolithic Delivery Product Team Using Monolithic Delivery
  • 23. Breaking Down the SILOs Product Team Using Monolithic Delivery Product Team Using Monolithic Delivery Prod Mgr UX Dev QA DBA Sys Adm Adm Net Adm SAN Product Team Using Microservices Product Team Using Microservices Product Team Using Microservices
  • 24. Breaking Down the SILOs Product Team Using Monolithic Delivery Product Team Using Monolithic Delivery Prod Mgr UX Dev QA DBA Sys Adm Adm Net Adm SAN Product Team Using Microservices Product Team Using Microservices Platform Team Product Team Using Microservices
  • 25. Breaking Down the SILOs Product Team Using Monolithic Delivery Product Team Using Monolithic Delivery Prod Mgr UX Dev QA DBA Sys Adm Adm Net Adm SAN Product Team Using Microservices Platform Team A P I Product Team Using Microservices Product Team Using Microservices
  • 26. Breaking Down the SILOs Product Team Using Monolithic Delivery Product Team Using Monolithic Delivery Prod Mgr UX Dev QA DBA Sys Adm Adm Net Adm SAN Product Team Using Microservices Platform Team A P I Product Team Using Microservices Product Team Using Microservices DevOps is a Re-Org!
  • 27. Release Plan Developer Developer Developer Developer Developer QA Release Integration Ops Replace Old With New Release Monolithic service updates Works well with a small number of developers and a single language like php, java or ruby
  • 28. Release Plan Developer Developer Developer Developer Developer Monolithic service updates QA Release Integration Ops Replace Old With New Release Bugs Works well with a small number of developers and a single language like php, java or ruby
  • 29. Release Plan Developer Developer Developer Developer Developer Monolithic service updates QA Release Integration Ops Replace Old With New Release Bugs Bugs Works well with a small number of developers and a single language like php, java or ruby
  • 30. Developer Developer Developer Developer Developer Old Release Still Running Release Plan Release Plan Release Plan Release Plan Immutable microservice deployment scales, is faster with large teams and diverse platform components
  • 31. Developer Developer Developer Developer Developer Immutable microservice deployment scales, is faster with large teams and diverse platform components Old Release Still Running Release Plan Release Plan Release Plan Release Plan Deploy Feature to Production Deploy Feature to Production Deploy Feature to Production Deploy Feature to Production
  • 32. Developer Developer Developer Developer Developer Immutable microservice deployment scales, is faster with large teams and diverse platform components Old Release Still Running Release Plan Release Plan Release Plan Release Plan Deploy Feature to Production Deploy Feature to Production Deploy Feature to Production Deploy Feature to Production Bugs
  • 33. Developer Developer Developer Developer Developer Immutable microservice deployment scales, is faster with large teams and diverse platform components Old Release Still Running Release Plan Release Plan Release Plan Release Plan Deploy Feature to Production Deploy Feature to Production Deploy Feature to Production Deploy Feature to Production Bugs Deploy Feature to Production
  • 34. Configure Configure Developer Developer Developer Release Plan Release Plan Release Plan Standardized portable container deployment saves time and effort Deploy Standardized Services https://hub.docker.com
  • 35. Configure Configure Developer Developer Developer Release Plan Release Plan Release Plan Deploy Standardized Services Deploy Feature to Production Deploy Feature to Production Deploy Feature to Production Bugs Deploy Feature to Production Standardized portable container deployment saves time and effort https://hub.docker.com
  • 36. Developing at the Speed of Docker Developers • Compile/Build • Seconds Extend container • Package dependencies • Seconds PaaS deploy Container • Docker startup • Seconds
  • 37. Developing at the Speed of Docker Developers • Compile/Build • Seconds Extend container • Package dependencies • Seconds PaaS deploy Container • Docker startup • Seconds Speed is addictive, hard to go back to taking much longer to get things done
  • 38. What Happened? Rate of change increased Cost and size and risk of change reduced
  • 39. Disruptor: Continuous Delivery with Containerized Microservices
  • 41. A Microservice Definition ! Loosely coupled service oriented architecture with bounded contexts
  • 42. If every service has to be updated at the same time it’s not loosely coupled A Microservice Definition ! Loosely coupled service oriented architecture with bounded contexts
  • 43. If every service has to be updated at the same time it’s not loosely coupled A Microservice Definition ! Loosely coupled service oriented architecture with bounded contexts If you have to know too much about surrounding services you don’t have a bounded context. See the Domain Driven Design book by Eric Evans.
  • 44. Coupling Concerns ●Conway’s Law - organizational coupling ●Centralized Database Schemas ●Enterprise Service Bus - centralized message queues ●Inflexible Protocol Versioning http://en.wikipedia.org/wiki/Conway's_law
  • 45. Speeding Up The Platform Datacenter Snowflakes • Deploy in months • Live for years
  • 46. Speeding Up The Platform Datacenter Snowflakes • Deploy in months • Live for years Virtualized and Cloud • Deploy in minutes • Live for weeks
  • 47. Speeding Up The Platform Datacenter Snowflakes • Deploy in months • Live for years Virtualized and Cloud • Deploy in minutes • Live for weeks Docker Containers • Deploy in seconds • Live for minutes/hours
  • 48. Speeding Up The Platform Datacenter Snowflakes • Deploy in months • Live for years Virtualized and Cloud • Deploy in minutes • Live for weeks Docker Containers • Deploy in seconds • Live for minutes/hours AWS Lambda • Deploy in milliseconds • Live for seconds
  • 49. Speeding Up The Platform Datacenter Snowflakes • Deploy in months • Live for years Virtualized and Cloud • Deploy in minutes • Live for weeks Docker Containers • Deploy in seconds • Live for minutes/hours AWS Lambda • Deploy in milliseconds • Live for seconds Speed enables and encourages new microservice architectures
  • 50. State of the Art in Web Scale Microservice Architectures AWS Re:Invent : Asgard to Zuul https://www.youtube.com/watch?v=p7ysHhs5hl0 Resiliency at Massive Scale https://www.youtube.com/watch?v=ZfYJHtVL1_w Microservice Architecture https://www.youtube.com/watch?v=CriDUYtfrjs http://www.infoq.com/presentations/scale-gilt http://www.slideshare.net/mcculloughsean/itier-breaking-up-the-monolith-philly-ete http://www.infoq.com/presentations/Twitter-Timeline-Scalability http://www.infoq.com/presentations/twitter-soa http://www.infoq.com/presentations/Zipkin https://speakerdeck.com/mattheath/scaling-micro-services-in-go-highload-plus-plus-2014
  • 51. Microservice Concerns Tooling Configuration Discovery Routing Observability Datastores Operational: Orchestration and Deployment Infrastructure Development: Languages and Container
  • 52. Microservices Edda Archaius ! Configuration Asgard Aminator ! Tooling Eureka Prana ! Discovery Denominator Zuul, Netty Ribbon 2.0 ! Routing Hystrix Pytheus SALP ! Observability Ephemeral datastores using Dynomite, Memcached, Astyanax, Staash, Priam, Cassandra Manual Orchestration with Asgard and deployment on AWS or Eucalyptus Java, Groovy, Scala, Clojure, Python, Node.js with AMI and Docker Containers
  • 53. Microservices Edda Archaius ! Configuration Asgard Aminator ! Tooling Eureka Prana ! Discovery Denominator Zuul, Netty Ribbon 2.0 ! Routing Hystrix Pytheus SALP ! Observability Ephemeral datastores using Dynomite, Memcached, Astyanax, Staash, Priam, Cassandra Manual Orchestration with Asgard and deployment on AWS or Eucalyptus Java, Groovy, Scala, Clojure, Python, Node.js with AMI and Docker Containers Focus on global distribution, high scale and availability
  • 54.
  • 55.
  • 56. Twitter Microservices Decider !! Tooling Configuration Finagle Zookeeper ! Discovery Finagle Netty ! Routing Zipkin !! Observability Custom Cassandra-like datastore: Manhattan Orchestration using Aurora deployment in datacenters using Mesos Scala with JVM Container
  • 57. Twitter Microservices Decider !! Tooling Configuration Finagle Zookeeper ! Discovery Finagle Netty ! Routing Zipkin !! Observability Custom Cassandra-like datastore: Manhattan Orchestration using Aurora deployment in datacenters using Mesos Scala with JVM Container Focus on efficient datacenter deployment at scale
  • 58.
  • 59.
  • 60. Gilt Microservices Decider !! Configuration Ion Cannon SBT Rake ! Tooling Finagle Zookeeper ! Discovery Akka Finagle Netty ! Routing Zipkin !! Observability Datastores per Microservice using MongoDB, Postgres, Voldemort Deployment on AWS Scala and Ruby with Docker Containers
  • 61. Gilt Microservices Decider !! Configuration Ion Cannon SBT Rake ! Tooling Finagle Zookeeper ! Discovery Akka Finagle Netty ! Routing Zipkin !! Observability Datastores per Microservice using MongoDB, Postgres, Voldemort Deployment on AWS Scala and Ruby with Docker Containers Focus on fast development with Scala and Docker
  • 62.
  • 63. Hailo Microservices Configuration Hubot Janky Jenkins ! Tooling go-platform ! Discovery go-platform RabbitMQ ! Routing Request trace ! Observability Datastore based on Cassandra Deployment on AWS Go using Docker
  • 64. Hailo Microservices Configuration Hubot Janky Jenkins ! Tooling go-platform ! Discovery go-platform RabbitMQ ! Routing Request trace ! Observability Datastore based on Cassandra Deployment on AWS Go using Docker Focus on fast development at scale using Go
  • 65.
  • 66. Node.js Microservices Several different approaches ! Mostly small simple microservices ! Focus on easy interface with presentation code in javascript ! AWS Lambda - preview only http://senecajs.org/ http://aws.amazon.com/lambda/
  • 67. Adrian’s Prototypes Model and visualize microservices Simulate interesting architectures ! See github.com/adrianco/spigo Simulate Protocol Interactions in Go ! See github.com/adrianco/d3grow Dynamic visualization
  • 68. Web Scale Characteristics ●Brand new Microservices are deployed infrequently ●New versions deployed automatically/frequently ●No real need for general purpose orchestration ●Architectures use hundreds of microservices ●Each deployment is heavily customized
  • 70. Orchestration for Applications ●Standard portable microservice based applications ●New versions deployed automatically/frequently ●Orchestration automated and standardized ●Architectures likely based on tens of microservices ●Opportunity: Docker Hub as the enterprise app store
  • 71. Next Generation Applications ? ! Configuration ? ! Tooling ? ! Discovery ? ! Routing ? ! Observability Datastores: Ephemeral, Orchestrated or DBaaS Operational: Many orchestration choices across public and private clouds Development: Components assembled from Docker Hub as a composable “app store”
  • 72. Next Generation Applications ? ! Configuration ? ! Tooling ? ! Discovery ? ! Routing ? ! Observability Datastores: Ephemeral, Orchestrated or DBaaS Operational: Many orchestration choices across public and private clouds Development: Components assembled from Docker Hub as a composable “app store” Fill in the gaps, rapidly evolving ecosystem choices
  • 77. Any Questions? ● Battery Ventures http://www.battery.com ● Adrian’s Tweets @adrianco and Blog http://perfcap.blogspot.com ● Slideshare http://slideshare.com/adriancockcroft ! ● Monitorama Opening Keynote Portland OR - May 7th, 2014 - Video available ● GOTO Chicago Opening Keynote May 20th, 2014 - Video available ● Qcon New York – Speed and Scale - June 11th, 2014 - Video available ● Structure - Cloud Trends - San Francisco - June 19th, 2014 - Video available ● GOTO Copenhagen/Aarhus – Fast Delivery - Denmark – Sept 25th, 2014 ● DevOps Enterprise Summit - San Francisco - Oct 21-23rd, 2014 #DOES14 - Videos available ● GOTO Berlin - Migrating to Microservices - Germany - Nov 6th, 2014 ● AWS Re:Invent - Cloud Native Cost Optimization - Las Vegas - November 14th, 2014 Disclosure: some of the companies mentioned may be Battery Ventures Portfolio Companies See www.battery.com for a list of portfolio investments