SlideShare une entreprise Scribd logo
1  sur  37
© Electric Cloud | electric-cloud.com | @electriccloud
A DevOps.com webinar featuring Electric Cloud &Trace3
From Monolith to Microservices
& Beyond!
© Electric Cloud | electric-cloud.com | @electriccloud
Speakers
Marc Hornbeek
Principal Consultant,
DevOps
https://www.linkedin.co
m/in/marchornbeek
Anders Wallgren
CTO, Electric Cloud
@anders_wallgren
/ @electriccloud - #ecwebinar
Sam Fell
Moderator, Electric Cloud
@samueldfell
© Electric Cloud | electric-cloud.com | @electriccloud
Quick Polling
Question
© Electric Cloud | electric-cloud.com | @electriccloud
Continuous Delivery of Microservices:
Patterns and Processes
Anders Wallgren
CTO, Electric Cloud
© Electric Cloud | electric-cloud.com | @electriccloud
Agenda
01
What are microservices
and what’s cool about
them?
03
What’s difficult about
microservices?
02
Monolithic Apps: The
good, the bad, the ugly.
04 Best Practices
© Electric Cloud | electric-cloud.com | @electriccloud
What are
microservices
© Electric Cloud | electric-cloud.com | @electriccloud
Microservices
• A pattern for building distributed
systems:
• A suite of services, each running in its
own process, each exposing an API
• Independently developed
• Independently deployable
• Each service is focused on doing one
thing well
“Gather together those
things that change for
the same reason, and
separate those things
that change for different
reasons.”
– Robert Martin
© Electric Cloud | electric-cloud.com | @electriccloud
What’s cool
about
microservices
© Electric Cloud | electric-cloud.com | @electriccloud
What’s cool about Microservices?
Divide and conquer
complex distributed
applications
Loose coupling
Makes it easier to adopt
new technologies
Smaller more autonomous teams
are more productive – better
resource utilization
© Electric Cloud | electric-cloud.com | @electriccloud
Monolithic Apps: The good, the bad, the ugly…
Can be easier to
test
Harder to learn and
understand the
code
Can be easier to
develop
Easier to produce
spaghetti code
Can be easier to
deploy
Hard to adapt to
new technologies
Can’t deploy
anything until you
deploy everything
Have to scale
everything to scale
anything
© Electric Cloud | electric-cloud.com | @electriccloud
So…Was Fred Brooks Wrong?
Emphatically, no…… BUT!! A properly constructed
microservices architecture
makes it vastly easier to
scale teams and scale
applications
https://puppetlabs.com/2015-devops-report-ppc
© Electric Cloud | electric-cloud.com | @electriccloud
Should I use Microservices?
• If you already have solid CI, automated
testing, and automated deployment, and
you’re looking to scale, then maybe
• If you don’t have automated testing, then
you should probably definitely worry
about that first
• You have to be (or become) very good at
automated deployment, testing and
monitoring to reap the benefits.
Microservices are
not a magic
hammer that
will make your
other problems
go away
© Electric Cloud | electric-cloud.com | @electriccloud
Am I ready for microservices?
• If you’re just starting out, stay
monolithic until you understand the
problem better
• You need to be good at infrastructure
provisioning
• You need to be good at rapid
application deployment
• You need to be good at monitoring
• You need to have good domain/system
comprehension http://martinfowler.com/bliki/MicroservicePrerequisites.html
© Electric Cloud | electric-cloud.com | @electriccloud
What’s difficult about Microservices?
• Distributed Systems Are Hard
• State management – transactions, caching, and other fun things
• Team-per-service or Silo-per-service? + Conway’s Law
• Legacy apps: Rewrite? Ignore? Hybrid?
• Good system comprehension is key
• Your service might be small, but how large is its deployment
footprint?
© Electric Cloud | electric-cloud.com | @electriccloud
(Some) Microservices
Best Practices
© Electric Cloud | electric-cloud.com | @electriccloud
What makes a good microservice?
• Loose coupling
• A change to service A shouldn’t require a change in service B
• Small, tightly focused API
• High cohesion
• Each service should have a specific responsibility
• Domain-specific behavior should be in one place
• If you need to change a behavior, you shouldn’t have to change
multiple services
© Electric Cloud | electric-cloud.com | @electriccloud
What size should my services be?
• The smaller the services, the more
benefit you get from decoupling
• You should be able to (re-)rewrite one
in a “small” number of weeks
• If you can’t make a change to a
service and deploy it without
changing other things, then it’s too
large
• The smaller the service, the more
moving parts you have, so you have
to be ready for that, operationally
© Electric Cloud | electric-cloud.com | @electriccloud
Environments & Deployment
• Keep your environments as close to production as is practical
(Docker/Chef/Puppet, etc)
• One service per host
• Minimize the impact of one service on others
• Minimize the impact of a host outage
• Use VMs/containers to make your life easier
• Containers map very well to microservices
• “Immutable servers”
• PaaS solutions can be helpful, but can also constrain you
Automate all the things!
© Electric Cloud | electric-cloud.com | @electriccloud
Things to look out for
• It isn’t necessarily easier to do it this way…
• Your services will evolve over time – you’ll split services, perhaps merge
them, etc. Just accept that.
• You need to be rigorous in handling failures (consider using, e.g. Hystrix
from Netflix to bake in better resiliency)
• Reporting will need to change – you probably won’t have all the data in a
single place (or even a single technology)
• “The network is reliable” (and the rest of the 8 fallacies)
• Be careful about how you expose your data objects over the wire
• “But my service relies on version X of ServiceA and now I’m down”
© Electric Cloud | electric-cloud.com | @electriccloud
Software Pipeline
Best Practices
for Microservices
© Electric Cloud | electric-cloud.com | @electriccloud
Best Practices for CD Pipelines of Microservices-based Apps
• Your Automated Software Pipeline Is Your Friend™
• Ideally, one platform handles all your software delivery
• How’s your test coverage?
• Are your tests automated? Really automated?
• Self-service automation/ChatOps approaches
• Reduce onboarding time, waiting, complexity
• Your solution should provide a real-time view of all the pipelines’ statuses
and any dependencies or exceptions.
• Make sure your deployment pipeline plugs into your monitoring so that
alerts can trigger automatic processes such as rolling back a service,
switching between blue/green deployments, scaling and so on.
© Electric Cloud | electric-cloud.com | @electriccloud
Best Practices for CD Pipelines of Microservices-based Apps
• One repository per service
• Independent CI and Deployment pipelines per service
• “Automate all the things”: plug in all your toolchain to
orchestrate the entire pipeline (CI, testing, configuration,
infrastructure provisioning, deployments, application release
processes, and production feedback loops.)
• Your pipeline must be tools/environment agnostic to support
each team’s workflow and tool chain
• Test automation tools and service virtualization are critical
© Electric Cloud | electric-cloud.com | @electriccloud
Best Practices for CD Pipelines of Microservices-based Apps
• Track artifacts through the pipeline (who checked-in the
code, what tests were run, pass/fail results, on which
environment it was deployed, which configuration was used,
who approved it and so on)
• Bake in compliance into the pipeline by binding certain
security checks and acceptance tests
• Allow for both automatic and manual approval gates
• Create reusable models/processes/automation for your
various pipelines
© Electric Cloud | electric-cloud.com | @electriccloud
Thank you
© Electric Cloud | electric-cloud.com | @electriccloud
Micro-services and Beyond
© Electric Cloud | electric-cloud.com | @electriccloud
40
From Spaghetti to Ravioli
end user
experience
Spaghetti
coded
monolith
Layered SOA
architecture
Loosely coupled
context bounded
microservices
© Electric Cloud | electric-cloud.com | @electriccloud
41
Survey: in a DevOps world, microservices rule
Joe McKendrick, September 2016
30% already in production
20% "seriously piloting"
Who is doing Microservices?
2-pizza
teams 2PT
2006
Strangler
Pattern
Martin Fowler
2004
Microservices in Production
50% of applications being built
and deployed – Lightbend 2016
© Electric Cloud | electric-cloud.com | @electriccloud
42
Microservices Challenges
What comes after microservices?
Presented at InfoQ 2016
Matt Ranney
 Velocity
 Productivity
 Continuous
Delivery
Complexity !
© Electric Cloud | electric-cloud.com | @electriccloud
43
Horizontal Challenges
• DevOps skills
• Resource Management
• Product re-engineering
Dev CI Stage Prod
Vertical Challenges
• Performance testing
• Process re-engineering
• Release co-ordination
• Ops Overhead
© Electric Cloud | electric-cloud.com | @electriccloud
Discussion
© Electric Cloud | electric-cloud.com | @electriccloud
What are the challenges of
monolith decomposition?
© Electric Cloud | electric-cloud.com | @electriccloud
What are the challenges of
Microservice release?
© Electric Cloud | electric-cloud.com | @electriccloud
Why DevOps +
Microservices?
© Electric Cloud | electric-cloud.com | @electriccloud
How can you make Ops
teams comfortable with
Microservices?
© Electric Cloud | electric-cloud.com | @electriccloud
What is the future beyond
Microservices?
© Electric Cloud | electric-cloud.com | @electriccloud
Resources
• http://www.infoq.com/presentations/Breaking-the-
Monolith
• http://martinfowler.com/tags/microservices.html
• http://www.amazon.com/Building-Microservices-Sam-
Newman/dp/1491950358
• http://highscalability.com/blog/2014/7/28/the-great-
microservices-vs-monolithic-apps-twitter-melee.html
© Electric Cloud | electric-cloud.com | @electriccloud
Thank you

Contenu connexe

Tendances

The Microservices and DevOps Journey
The Microservices and DevOps JourneyThe Microservices and DevOps Journey
The Microservices and DevOps JourneyC4Media
 
Microservice Scars - Alt.net 2hr
Microservice Scars - Alt.net 2hrMicroservice Scars - Alt.net 2hr
Microservice Scars - Alt.net 2hrJoshua Toth
 
Azure Spring Cloud Workshop - June 17, 2020
Azure Spring Cloud Workshop - June 17, 2020Azure Spring Cloud Workshop - June 17, 2020
Azure Spring Cloud Workshop - June 17, 2020VMware Tanzu
 
Delivering Essentials for Albertsons: VMware TAS’s Critical Role During the C...
Delivering Essentials for Albertsons: VMware TAS’s Critical Role During the C...Delivering Essentials for Albertsons: VMware TAS’s Critical Role During the C...
Delivering Essentials for Albertsons: VMware TAS’s Critical Role During the C...VMware Tanzu
 
Dockercon State of the Art in Microservices
Dockercon State of the Art in MicroservicesDockercon State of the Art in Microservices
Dockercon State of the Art in MicroservicesAdrian Cockcroft
 
Microservices Architecture
Microservices ArchitectureMicroservices Architecture
Microservices ArchitectureIzzet Mustafaiev
 
The Cloud Native Journey
The Cloud Native JourneyThe Cloud Native Journey
The Cloud Native JourneyVMware Tanzu
 
Cloud Foundry Summit 2015: Managing Hybrid Deployments Using Cloud Foundry on...
Cloud Foundry Summit 2015: Managing Hybrid Deployments Using Cloud Foundry on...Cloud Foundry Summit 2015: Managing Hybrid Deployments Using Cloud Foundry on...
Cloud Foundry Summit 2015: Managing Hybrid Deployments Using Cloud Foundry on...VMware Tanzu
 
Cloud-Native Workshop - Santa Monica
Cloud-Native Workshop - Santa MonicaCloud-Native Workshop - Santa Monica
Cloud-Native Workshop - Santa MonicaVMware Tanzu
 
CIS14: NSTIC - Identity and Access Management Collaborative Approaches to Nov...
CIS14: NSTIC - Identity and Access Management Collaborative Approaches to Nov...CIS14: NSTIC - Identity and Access Management Collaborative Approaches to Nov...
CIS14: NSTIC - Identity and Access Management Collaborative Approaches to Nov...CloudIDSummit
 
Cloud Native Applications Maturity Model
Cloud Native Applications Maturity ModelCloud Native Applications Maturity Model
Cloud Native Applications Maturity ModelJim Bugwadia
 
App Modernisation with Microsoft Azure
App Modernisation with Microsoft AzureApp Modernisation with Microsoft Azure
App Modernisation with Microsoft AzureAdam Stephensen
 
From Monolithic to Microservices
From Monolithic to Microservices From Monolithic to Microservices
From Monolithic to Microservices Amazon Web Services
 
The Need of Cloud-Native Application
The Need of Cloud-Native ApplicationThe Need of Cloud-Native Application
The Need of Cloud-Native ApplicationEmiliano Pecis
 
Building a Bank out of Microservices (NDC Sydney, August 2016)
Building a Bank out of Microservices (NDC Sydney, August 2016)Building a Bank out of Microservices (NDC Sydney, August 2016)
Building a Bank out of Microservices (NDC Sydney, August 2016)Graham Lea
 
FLUX - Crash Course in Cloud 2.0
FLUX - Crash Course in Cloud 2.0 FLUX - Crash Course in Cloud 2.0
FLUX - Crash Course in Cloud 2.0 Mark Hinkle
 

Tendances (20)

The Microservices and DevOps Journey
The Microservices and DevOps JourneyThe Microservices and DevOps Journey
The Microservices and DevOps Journey
 
Microservice Scars - Alt.net 2hr
Microservice Scars - Alt.net 2hrMicroservice Scars - Alt.net 2hr
Microservice Scars - Alt.net 2hr
 
Azure Spring Cloud Workshop - June 17, 2020
Azure Spring Cloud Workshop - June 17, 2020Azure Spring Cloud Workshop - June 17, 2020
Azure Spring Cloud Workshop - June 17, 2020
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Delivering Essentials for Albertsons: VMware TAS’s Critical Role During the C...
Delivering Essentials for Albertsons: VMware TAS’s Critical Role During the C...Delivering Essentials for Albertsons: VMware TAS’s Critical Role During the C...
Delivering Essentials for Albertsons: VMware TAS’s Critical Role During the C...
 
Cloud-native Data
Cloud-native DataCloud-native Data
Cloud-native Data
 
Dockercon State of the Art in Microservices
Dockercon State of the Art in MicroservicesDockercon State of the Art in Microservices
Dockercon State of the Art in Microservices
 
Microservices Architecture
Microservices ArchitectureMicroservices Architecture
Microservices Architecture
 
The Cloud Native Journey
The Cloud Native JourneyThe Cloud Native Journey
The Cloud Native Journey
 
Why to Cloud Native
Why to Cloud NativeWhy to Cloud Native
Why to Cloud Native
 
Cloud Foundry Summit 2015: Managing Hybrid Deployments Using Cloud Foundry on...
Cloud Foundry Summit 2015: Managing Hybrid Deployments Using Cloud Foundry on...Cloud Foundry Summit 2015: Managing Hybrid Deployments Using Cloud Foundry on...
Cloud Foundry Summit 2015: Managing Hybrid Deployments Using Cloud Foundry on...
 
Cloud-Native Workshop - Santa Monica
Cloud-Native Workshop - Santa MonicaCloud-Native Workshop - Santa Monica
Cloud-Native Workshop - Santa Monica
 
CIS14: NSTIC - Identity and Access Management Collaborative Approaches to Nov...
CIS14: NSTIC - Identity and Access Management Collaborative Approaches to Nov...CIS14: NSTIC - Identity and Access Management Collaborative Approaches to Nov...
CIS14: NSTIC - Identity and Access Management Collaborative Approaches to Nov...
 
Cloud Native Applications Maturity Model
Cloud Native Applications Maturity ModelCloud Native Applications Maturity Model
Cloud Native Applications Maturity Model
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
App Modernisation with Microsoft Azure
App Modernisation with Microsoft AzureApp Modernisation with Microsoft Azure
App Modernisation with Microsoft Azure
 
From Monolithic to Microservices
From Monolithic to Microservices From Monolithic to Microservices
From Monolithic to Microservices
 
The Need of Cloud-Native Application
The Need of Cloud-Native ApplicationThe Need of Cloud-Native Application
The Need of Cloud-Native Application
 
Building a Bank out of Microservices (NDC Sydney, August 2016)
Building a Bank out of Microservices (NDC Sydney, August 2016)Building a Bank out of Microservices (NDC Sydney, August 2016)
Building a Bank out of Microservices (NDC Sydney, August 2016)
 
FLUX - Crash Course in Cloud 2.0
FLUX - Crash Course in Cloud 2.0 FLUX - Crash Course in Cloud 2.0
FLUX - Crash Course in Cloud 2.0
 

En vedette

Microservices: Decomposing Applications for Deployability and Scalability (ja...
Microservices: Decomposing Applications for Deployability and Scalability (ja...Microservices: Decomposing Applications for Deployability and Scalability (ja...
Microservices: Decomposing Applications for Deployability and Scalability (ja...Chris Richardson
 
muCon 2015 "The Business Behind Microservices: Organisational, Architectural,...
muCon 2015 "The Business Behind Microservices: Organisational, Architectural,...muCon 2015 "The Business Behind Microservices: Organisational, Architectural,...
muCon 2015 "The Business Behind Microservices: Organisational, Architectural,...Daniel Bryant
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecturetyrantbrian
 
MicroService Architecture
MicroService ArchitectureMicroService Architecture
MicroService ArchitectureFred George
 

En vedette (7)

Microservices with Docker
Microservices with Docker Microservices with Docker
Microservices with Docker
 
Beyond Microservices
Beyond MicroservicesBeyond Microservices
Beyond Microservices
 
Microservices: Decomposing Applications for Deployability and Scalability (ja...
Microservices: Decomposing Applications for Deployability and Scalability (ja...Microservices: Decomposing Applications for Deployability and Scalability (ja...
Microservices: Decomposing Applications for Deployability and Scalability (ja...
 
muCon 2015 "The Business Behind Microservices: Organisational, Architectural,...
muCon 2015 "The Business Behind Microservices: Organisational, Architectural,...muCon 2015 "The Business Behind Microservices: Organisational, Architectural,...
muCon 2015 "The Business Behind Microservices: Organisational, Architectural,...
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
 
MicroService Architecture
MicroService ArchitectureMicroService Architecture
MicroService Architecture
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 

Similaire à From Monolith to Microservices – and Beyond!

Get Loose! Microservices and Loosely Coupled Architectures
Get Loose! Microservices and Loosely Coupled ArchitecturesGet Loose! Microservices and Loosely Coupled Architectures
Get Loose! Microservices and Loosely Coupled ArchitecturesDeborah Schalm
 
Get Loose! Microservices and Loosely Coupled Architectures
Get Loose! Microservices and Loosely Coupled Architectures Get Loose! Microservices and Loosely Coupled Architectures
Get Loose! Microservices and Loosely Coupled Architectures DevOps.com
 
Microservices and Docker: Foundation for a New Generation of Applications
Microservices and Docker: Foundation for a New Generation of ApplicationsMicroservices and Docker: Foundation for a New Generation of Applications
Microservices and Docker: Foundation for a New Generation of ApplicationsTechWell
 
Diving Deeper into DevOps Deployments
Diving Deeper into DevOps DeploymentsDiving Deeper into DevOps Deployments
Diving Deeper into DevOps DeploymentsJules Pierre-Louis
 
Bridging The Gap Between Dev and Ops
Bridging The Gap Between Dev and OpsBridging The Gap Between Dev and Ops
Bridging The Gap Between Dev and OpsDevOps.com
 
Sam Fell - Electric Cloud - Automating Continuous Delivery with ElectricFlow
Sam Fell - Electric Cloud - Automating Continuous Delivery with ElectricFlowSam Fell - Electric Cloud - Automating Continuous Delivery with ElectricFlow
Sam Fell - Electric Cloud - Automating Continuous Delivery with ElectricFlowDevOps Enterprise Summit
 
10 Do’s for DevOps!
 10 Do’s for DevOps!  10 Do’s for DevOps!
10 Do’s for DevOps! DevOps.com
 
“Shift-Left.” Performance And Architecture Validation with Continuous Integra...
“Shift-Left.” Performance And Architecture Validation with Continuous Integra...“Shift-Left.” Performance And Architecture Validation with Continuous Integra...
“Shift-Left.” Performance And Architecture Validation with Continuous Integra...Deborah Schalm
 
"Shift-Left." Performance And Architecture Validation with Continuous Integra...
"Shift-Left." Performance And Architecture Validation with Continuous Integra..."Shift-Left." Performance And Architecture Validation with Continuous Integra...
"Shift-Left." Performance And Architecture Validation with Continuous Integra...DevOps.com
 
Microservices and Docker at Scale: The PB&J of Modern Systems
Microservices and Docker at Scale: The PB&J of Modern SystemsMicroservices and Docker at Scale: The PB&J of Modern Systems
Microservices and Docker at Scale: The PB&J of Modern SystemsTechWell
 
Getting to Cloud Nine: Container, Cloud and Serverless Migration Strategies
Getting to Cloud Nine: Container, Cloud and Serverless Migration StrategiesGetting to Cloud Nine: Container, Cloud and Serverless Migration Strategies
Getting to Cloud Nine: Container, Cloud and Serverless Migration StrategiesDevOps.com
 
Tanay Nagjee - Electric Cloud - Better Continuous Integration with Test Accel...
Tanay Nagjee - Electric Cloud - Better Continuous Integration with Test Accel...Tanay Nagjee - Electric Cloud - Better Continuous Integration with Test Accel...
Tanay Nagjee - Electric Cloud - Better Continuous Integration with Test Accel...DevOps Enterprise Summit
 
Microservices Tutorial for Beginners | All You Need to Get Started
Microservices Tutorial for Beginners | All You Need to Get StartedMicroservices Tutorial for Beginners | All You Need to Get Started
Microservices Tutorial for Beginners | All You Need to Get StartedShailendra Chauhan
 
Micro Services Architecture
Micro Services ArchitectureMicro Services Architecture
Micro Services ArchitectureAli BAKAN
 
Affordably Refreshing Your Water District’s Process Control
Affordably Refreshing Your Water District’s Process ControlAffordably Refreshing Your Water District’s Process Control
Affordably Refreshing Your Water District’s Process ControlInductive Automation
 
Affordably Refreshing Your Water District’s Process Control
Affordably Refreshing Your Water District’s Process ControlAffordably Refreshing Your Water District’s Process Control
Affordably Refreshing Your Water District’s Process ControlInductive Automation
 
From Measurement to Insight: Putting DevOps Metrics To Work
From Measurement to Insight: Putting DevOps Metrics To WorkFrom Measurement to Insight: Putting DevOps Metrics To Work
From Measurement to Insight: Putting DevOps Metrics To WorkDevOps.com
 
Managing Microservices at Scale
Managing Microservices at ScaleManaging Microservices at Scale
Managing Microservices at ScalePerforce
 
Concurrency at Scale: Evolution to Micro-Services
Concurrency at Scale:  Evolution to Micro-ServicesConcurrency at Scale:  Evolution to Micro-Services
Concurrency at Scale: Evolution to Micro-ServicesRandy Shoup
 
3 Critical Keys to DevOps Success: Lessons from Forrester Research, Intel, an...
3 Critical Keys to DevOps Success: Lessons from Forrester Research, Intel, an...3 Critical Keys to DevOps Success: Lessons from Forrester Research, Intel, an...
3 Critical Keys to DevOps Success: Lessons from Forrester Research, Intel, an...DevOps.com
 

Similaire à From Monolith to Microservices – and Beyond! (20)

Get Loose! Microservices and Loosely Coupled Architectures
Get Loose! Microservices and Loosely Coupled ArchitecturesGet Loose! Microservices and Loosely Coupled Architectures
Get Loose! Microservices and Loosely Coupled Architectures
 
Get Loose! Microservices and Loosely Coupled Architectures
Get Loose! Microservices and Loosely Coupled Architectures Get Loose! Microservices and Loosely Coupled Architectures
Get Loose! Microservices and Loosely Coupled Architectures
 
Microservices and Docker: Foundation for a New Generation of Applications
Microservices and Docker: Foundation for a New Generation of ApplicationsMicroservices and Docker: Foundation for a New Generation of Applications
Microservices and Docker: Foundation for a New Generation of Applications
 
Diving Deeper into DevOps Deployments
Diving Deeper into DevOps DeploymentsDiving Deeper into DevOps Deployments
Diving Deeper into DevOps Deployments
 
Bridging The Gap Between Dev and Ops
Bridging The Gap Between Dev and OpsBridging The Gap Between Dev and Ops
Bridging The Gap Between Dev and Ops
 
Sam Fell - Electric Cloud - Automating Continuous Delivery with ElectricFlow
Sam Fell - Electric Cloud - Automating Continuous Delivery with ElectricFlowSam Fell - Electric Cloud - Automating Continuous Delivery with ElectricFlow
Sam Fell - Electric Cloud - Automating Continuous Delivery with ElectricFlow
 
10 Do’s for DevOps!
 10 Do’s for DevOps!  10 Do’s for DevOps!
10 Do’s for DevOps!
 
“Shift-Left.” Performance And Architecture Validation with Continuous Integra...
“Shift-Left.” Performance And Architecture Validation with Continuous Integra...“Shift-Left.” Performance And Architecture Validation with Continuous Integra...
“Shift-Left.” Performance And Architecture Validation with Continuous Integra...
 
"Shift-Left." Performance And Architecture Validation with Continuous Integra...
"Shift-Left." Performance And Architecture Validation with Continuous Integra..."Shift-Left." Performance And Architecture Validation with Continuous Integra...
"Shift-Left." Performance And Architecture Validation with Continuous Integra...
 
Microservices and Docker at Scale: The PB&J of Modern Systems
Microservices and Docker at Scale: The PB&J of Modern SystemsMicroservices and Docker at Scale: The PB&J of Modern Systems
Microservices and Docker at Scale: The PB&J of Modern Systems
 
Getting to Cloud Nine: Container, Cloud and Serverless Migration Strategies
Getting to Cloud Nine: Container, Cloud and Serverless Migration StrategiesGetting to Cloud Nine: Container, Cloud and Serverless Migration Strategies
Getting to Cloud Nine: Container, Cloud and Serverless Migration Strategies
 
Tanay Nagjee - Electric Cloud - Better Continuous Integration with Test Accel...
Tanay Nagjee - Electric Cloud - Better Continuous Integration with Test Accel...Tanay Nagjee - Electric Cloud - Better Continuous Integration with Test Accel...
Tanay Nagjee - Electric Cloud - Better Continuous Integration with Test Accel...
 
Microservices Tutorial for Beginners | All You Need to Get Started
Microservices Tutorial for Beginners | All You Need to Get StartedMicroservices Tutorial for Beginners | All You Need to Get Started
Microservices Tutorial for Beginners | All You Need to Get Started
 
Micro Services Architecture
Micro Services ArchitectureMicro Services Architecture
Micro Services Architecture
 
Affordably Refreshing Your Water District’s Process Control
Affordably Refreshing Your Water District’s Process ControlAffordably Refreshing Your Water District’s Process Control
Affordably Refreshing Your Water District’s Process Control
 
Affordably Refreshing Your Water District’s Process Control
Affordably Refreshing Your Water District’s Process ControlAffordably Refreshing Your Water District’s Process Control
Affordably Refreshing Your Water District’s Process Control
 
From Measurement to Insight: Putting DevOps Metrics To Work
From Measurement to Insight: Putting DevOps Metrics To WorkFrom Measurement to Insight: Putting DevOps Metrics To Work
From Measurement to Insight: Putting DevOps Metrics To Work
 
Managing Microservices at Scale
Managing Microservices at ScaleManaging Microservices at Scale
Managing Microservices at Scale
 
Concurrency at Scale: Evolution to Micro-Services
Concurrency at Scale:  Evolution to Micro-ServicesConcurrency at Scale:  Evolution to Micro-Services
Concurrency at Scale: Evolution to Micro-Services
 
3 Critical Keys to DevOps Success: Lessons from Forrester Research, Intel, an...
3 Critical Keys to DevOps Success: Lessons from Forrester Research, Intel, an...3 Critical Keys to DevOps Success: Lessons from Forrester Research, Intel, an...
3 Critical Keys to DevOps Success: Lessons from Forrester Research, Intel, an...
 

Plus de Jules Pierre-Louis

The Coming Earthquake in IIS and SQL Configuration Management
The Coming Earthquake  in IIS and SQL Configuration ManagementThe Coming Earthquake  in IIS and SQL Configuration Management
The Coming Earthquake in IIS and SQL Configuration ManagementJules Pierre-Louis
 
Microservice Monitoring and Quality Management for Modern Apps and Infrastruc...
Microservice Monitoring and Quality Management for Modern Apps and Infrastruc...Microservice Monitoring and Quality Management for Modern Apps and Infrastruc...
Microservice Monitoring and Quality Management for Modern Apps and Infrastruc...Jules Pierre-Louis
 
Sandstorm or Significant: The evolving role of context in Incident Management
Sandstorm or Significant: The evolving role of context in Incident ManagementSandstorm or Significant: The evolving role of context in Incident Management
Sandstorm or Significant: The evolving role of context in Incident ManagementJules Pierre-Louis
 
Cloud bees and forester open source is not enough
Cloud bees and forester open source is not enough  Cloud bees and forester open source is not enough
Cloud bees and forester open source is not enough Jules Pierre-Louis
 
Efficient Performance Test Automation - Opitmizing the Jenkins Pipeline
Efficient Performance Test Automation - Opitmizing the Jenkins PipelineEfficient Performance Test Automation - Opitmizing the Jenkins Pipeline
Efficient Performance Test Automation - Opitmizing the Jenkins PipelineJules Pierre-Louis
 
How to Build the Right Automation
How to Build the Right AutomationHow to Build the Right Automation
How to Build the Right AutomationJules Pierre-Louis
 
Containers: DevOp Enablers of Technical Solutions
Containers: DevOp Enablers of Technical SolutionsContainers: DevOp Enablers of Technical Solutions
Containers: DevOp Enablers of Technical SolutionsJules Pierre-Louis
 
Adopting DevOps @ Scale: Lessons learned at Hertz, Kaiser Permanente and lBM
Adopting DevOps @ Scale: Lessons learned at Hertz, Kaiser Permanente and lBMAdopting DevOps @ Scale: Lessons learned at Hertz, Kaiser Permanente and lBM
Adopting DevOps @ Scale: Lessons learned at Hertz, Kaiser Permanente and lBMJules Pierre-Louis
 
Managing Quality of Service for Containerized Microservice Applications
Managing Quality of Service for Containerized Microservice ApplicationsManaging Quality of Service for Containerized Microservice Applications
Managing Quality of Service for Containerized Microservice ApplicationsJules Pierre-Louis
 
The Evolution of Application Release Automation
The Evolution of Application Release AutomationThe Evolution of Application Release Automation
The Evolution of Application Release AutomationJules Pierre-Louis
 
DevOPs Transformation Workshop
DevOPs Transformation WorkshopDevOPs Transformation Workshop
DevOPs Transformation WorkshopJules Pierre-Louis
 
Pipeline: Continuous Delivery as Code in Jenkins 2.0
Pipeline: Continuous Delivery as Code in Jenkins 2.0Pipeline: Continuous Delivery as Code in Jenkins 2.0
Pipeline: Continuous Delivery as Code in Jenkins 2.0Jules Pierre-Louis
 
7 Habits of Highly Effective Jenkins Users
7 Habits of Highly Effective Jenkins Users7 Habits of Highly Effective Jenkins Users
7 Habits of Highly Effective Jenkins UsersJules Pierre-Louis
 
7 Habits of Highly Effective Jenkins Users
7 Habits of Highly Effective Jenkins Users7 Habits of Highly Effective Jenkins Users
7 Habits of Highly Effective Jenkins UsersJules Pierre-Louis
 
Webinar: A Roadmap for DevOps Success
Webinar: A Roadmap for DevOps SuccessWebinar: A Roadmap for DevOps Success
Webinar: A Roadmap for DevOps SuccessJules Pierre-Louis
 

Plus de Jules Pierre-Louis (18)

The Coming Earthquake in IIS and SQL Configuration Management
The Coming Earthquake  in IIS and SQL Configuration ManagementThe Coming Earthquake  in IIS and SQL Configuration Management
The Coming Earthquake in IIS and SQL Configuration Management
 
Microservice Monitoring and Quality Management for Modern Apps and Infrastruc...
Microservice Monitoring and Quality Management for Modern Apps and Infrastruc...Microservice Monitoring and Quality Management for Modern Apps and Infrastruc...
Microservice Monitoring and Quality Management for Modern Apps and Infrastruc...
 
The Human Side of DevSecOps
The Human Side of DevSecOpsThe Human Side of DevSecOps
The Human Side of DevSecOps
 
Sandstorm or Significant: The evolving role of context in Incident Management
Sandstorm or Significant: The evolving role of context in Incident ManagementSandstorm or Significant: The evolving role of context in Incident Management
Sandstorm or Significant: The evolving role of context in Incident Management
 
Cloud bees and forester open source is not enough
Cloud bees and forester open source is not enough  Cloud bees and forester open source is not enough
Cloud bees and forester open source is not enough
 
Efficient Performance Test Automation - Opitmizing the Jenkins Pipeline
Efficient Performance Test Automation - Opitmizing the Jenkins PipelineEfficient Performance Test Automation - Opitmizing the Jenkins Pipeline
Efficient Performance Test Automation - Opitmizing the Jenkins Pipeline
 
How to Build the Right Automation
How to Build the Right AutomationHow to Build the Right Automation
How to Build the Right Automation
 
Starting and Scaling Devops
Starting and Scaling Devops Starting and Scaling Devops
Starting and Scaling Devops
 
Starting and Scaling DevOps
Starting and Scaling DevOpsStarting and Scaling DevOps
Starting and Scaling DevOps
 
Containers: DevOp Enablers of Technical Solutions
Containers: DevOp Enablers of Technical SolutionsContainers: DevOp Enablers of Technical Solutions
Containers: DevOp Enablers of Technical Solutions
 
Adopting DevOps @ Scale: Lessons learned at Hertz, Kaiser Permanente and lBM
Adopting DevOps @ Scale: Lessons learned at Hertz, Kaiser Permanente and lBMAdopting DevOps @ Scale: Lessons learned at Hertz, Kaiser Permanente and lBM
Adopting DevOps @ Scale: Lessons learned at Hertz, Kaiser Permanente and lBM
 
Managing Quality of Service for Containerized Microservice Applications
Managing Quality of Service for Containerized Microservice ApplicationsManaging Quality of Service for Containerized Microservice Applications
Managing Quality of Service for Containerized Microservice Applications
 
The Evolution of Application Release Automation
The Evolution of Application Release AutomationThe Evolution of Application Release Automation
The Evolution of Application Release Automation
 
DevOPs Transformation Workshop
DevOPs Transformation WorkshopDevOPs Transformation Workshop
DevOPs Transformation Workshop
 
Pipeline: Continuous Delivery as Code in Jenkins 2.0
Pipeline: Continuous Delivery as Code in Jenkins 2.0Pipeline: Continuous Delivery as Code in Jenkins 2.0
Pipeline: Continuous Delivery as Code in Jenkins 2.0
 
7 Habits of Highly Effective Jenkins Users
7 Habits of Highly Effective Jenkins Users7 Habits of Highly Effective Jenkins Users
7 Habits of Highly Effective Jenkins Users
 
7 Habits of Highly Effective Jenkins Users
7 Habits of Highly Effective Jenkins Users7 Habits of Highly Effective Jenkins Users
7 Habits of Highly Effective Jenkins Users
 
Webinar: A Roadmap for DevOps Success
Webinar: A Roadmap for DevOps SuccessWebinar: A Roadmap for DevOps Success
Webinar: A Roadmap for DevOps Success
 

Dernier

A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceanilsa9823
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 

Dernier (20)

A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 

From Monolith to Microservices – and Beyond!

  • 1. © Electric Cloud | electric-cloud.com | @electriccloud A DevOps.com webinar featuring Electric Cloud &Trace3 From Monolith to Microservices & Beyond!
  • 2. © Electric Cloud | electric-cloud.com | @electriccloud Speakers Marc Hornbeek Principal Consultant, DevOps https://www.linkedin.co m/in/marchornbeek Anders Wallgren CTO, Electric Cloud @anders_wallgren / @electriccloud - #ecwebinar Sam Fell Moderator, Electric Cloud @samueldfell
  • 3. © Electric Cloud | electric-cloud.com | @electriccloud Quick Polling Question
  • 4. © Electric Cloud | electric-cloud.com | @electriccloud Continuous Delivery of Microservices: Patterns and Processes Anders Wallgren CTO, Electric Cloud
  • 5. © Electric Cloud | electric-cloud.com | @electriccloud Agenda 01 What are microservices and what’s cool about them? 03 What’s difficult about microservices? 02 Monolithic Apps: The good, the bad, the ugly. 04 Best Practices
  • 6. © Electric Cloud | electric-cloud.com | @electriccloud What are microservices
  • 7. © Electric Cloud | electric-cloud.com | @electriccloud Microservices • A pattern for building distributed systems: • A suite of services, each running in its own process, each exposing an API • Independently developed • Independently deployable • Each service is focused on doing one thing well “Gather together those things that change for the same reason, and separate those things that change for different reasons.” – Robert Martin
  • 8. © Electric Cloud | electric-cloud.com | @electriccloud What’s cool about microservices
  • 9. © Electric Cloud | electric-cloud.com | @electriccloud What’s cool about Microservices? Divide and conquer complex distributed applications Loose coupling Makes it easier to adopt new technologies Smaller more autonomous teams are more productive – better resource utilization
  • 10. © Electric Cloud | electric-cloud.com | @electriccloud Monolithic Apps: The good, the bad, the ugly… Can be easier to test Harder to learn and understand the code Can be easier to develop Easier to produce spaghetti code Can be easier to deploy Hard to adapt to new technologies Can’t deploy anything until you deploy everything Have to scale everything to scale anything
  • 11. © Electric Cloud | electric-cloud.com | @electriccloud So…Was Fred Brooks Wrong? Emphatically, no…… BUT!! A properly constructed microservices architecture makes it vastly easier to scale teams and scale applications https://puppetlabs.com/2015-devops-report-ppc
  • 12. © Electric Cloud | electric-cloud.com | @electriccloud Should I use Microservices? • If you already have solid CI, automated testing, and automated deployment, and you’re looking to scale, then maybe • If you don’t have automated testing, then you should probably definitely worry about that first • You have to be (or become) very good at automated deployment, testing and monitoring to reap the benefits. Microservices are not a magic hammer that will make your other problems go away
  • 13. © Electric Cloud | electric-cloud.com | @electriccloud Am I ready for microservices? • If you’re just starting out, stay monolithic until you understand the problem better • You need to be good at infrastructure provisioning • You need to be good at rapid application deployment • You need to be good at monitoring • You need to have good domain/system comprehension http://martinfowler.com/bliki/MicroservicePrerequisites.html
  • 14. © Electric Cloud | electric-cloud.com | @electriccloud What’s difficult about Microservices? • Distributed Systems Are Hard • State management – transactions, caching, and other fun things • Team-per-service or Silo-per-service? + Conway’s Law • Legacy apps: Rewrite? Ignore? Hybrid? • Good system comprehension is key • Your service might be small, but how large is its deployment footprint?
  • 15. © Electric Cloud | electric-cloud.com | @electriccloud (Some) Microservices Best Practices
  • 16. © Electric Cloud | electric-cloud.com | @electriccloud What makes a good microservice? • Loose coupling • A change to service A shouldn’t require a change in service B • Small, tightly focused API • High cohesion • Each service should have a specific responsibility • Domain-specific behavior should be in one place • If you need to change a behavior, you shouldn’t have to change multiple services
  • 17. © Electric Cloud | electric-cloud.com | @electriccloud What size should my services be? • The smaller the services, the more benefit you get from decoupling • You should be able to (re-)rewrite one in a “small” number of weeks • If you can’t make a change to a service and deploy it without changing other things, then it’s too large • The smaller the service, the more moving parts you have, so you have to be ready for that, operationally
  • 18. © Electric Cloud | electric-cloud.com | @electriccloud Environments & Deployment • Keep your environments as close to production as is practical (Docker/Chef/Puppet, etc) • One service per host • Minimize the impact of one service on others • Minimize the impact of a host outage • Use VMs/containers to make your life easier • Containers map very well to microservices • “Immutable servers” • PaaS solutions can be helpful, but can also constrain you Automate all the things!
  • 19. © Electric Cloud | electric-cloud.com | @electriccloud Things to look out for • It isn’t necessarily easier to do it this way… • Your services will evolve over time – you’ll split services, perhaps merge them, etc. Just accept that. • You need to be rigorous in handling failures (consider using, e.g. Hystrix from Netflix to bake in better resiliency) • Reporting will need to change – you probably won’t have all the data in a single place (or even a single technology) • “The network is reliable” (and the rest of the 8 fallacies) • Be careful about how you expose your data objects over the wire • “But my service relies on version X of ServiceA and now I’m down”
  • 20. © Electric Cloud | electric-cloud.com | @electriccloud Software Pipeline Best Practices for Microservices
  • 21. © Electric Cloud | electric-cloud.com | @electriccloud Best Practices for CD Pipelines of Microservices-based Apps • Your Automated Software Pipeline Is Your Friend™ • Ideally, one platform handles all your software delivery • How’s your test coverage? • Are your tests automated? Really automated? • Self-service automation/ChatOps approaches • Reduce onboarding time, waiting, complexity • Your solution should provide a real-time view of all the pipelines’ statuses and any dependencies or exceptions. • Make sure your deployment pipeline plugs into your monitoring so that alerts can trigger automatic processes such as rolling back a service, switching between blue/green deployments, scaling and so on.
  • 22. © Electric Cloud | electric-cloud.com | @electriccloud Best Practices for CD Pipelines of Microservices-based Apps • One repository per service • Independent CI and Deployment pipelines per service • “Automate all the things”: plug in all your toolchain to orchestrate the entire pipeline (CI, testing, configuration, infrastructure provisioning, deployments, application release processes, and production feedback loops.) • Your pipeline must be tools/environment agnostic to support each team’s workflow and tool chain • Test automation tools and service virtualization are critical
  • 23. © Electric Cloud | electric-cloud.com | @electriccloud Best Practices for CD Pipelines of Microservices-based Apps • Track artifacts through the pipeline (who checked-in the code, what tests were run, pass/fail results, on which environment it was deployed, which configuration was used, who approved it and so on) • Bake in compliance into the pipeline by binding certain security checks and acceptance tests • Allow for both automatic and manual approval gates • Create reusable models/processes/automation for your various pipelines
  • 24. © Electric Cloud | electric-cloud.com | @electriccloud Thank you
  • 25. © Electric Cloud | electric-cloud.com | @electriccloud Micro-services and Beyond
  • 26. © Electric Cloud | electric-cloud.com | @electriccloud 40 From Spaghetti to Ravioli end user experience Spaghetti coded monolith Layered SOA architecture Loosely coupled context bounded microservices
  • 27. © Electric Cloud | electric-cloud.com | @electriccloud 41 Survey: in a DevOps world, microservices rule Joe McKendrick, September 2016 30% already in production 20% "seriously piloting" Who is doing Microservices? 2-pizza teams 2PT 2006 Strangler Pattern Martin Fowler 2004 Microservices in Production 50% of applications being built and deployed – Lightbend 2016
  • 28. © Electric Cloud | electric-cloud.com | @electriccloud 42 Microservices Challenges What comes after microservices? Presented at InfoQ 2016 Matt Ranney  Velocity  Productivity  Continuous Delivery Complexity !
  • 29. © Electric Cloud | electric-cloud.com | @electriccloud 43 Horizontal Challenges • DevOps skills • Resource Management • Product re-engineering Dev CI Stage Prod Vertical Challenges • Performance testing • Process re-engineering • Release co-ordination • Ops Overhead
  • 30. © Electric Cloud | electric-cloud.com | @electriccloud Discussion
  • 31. © Electric Cloud | electric-cloud.com | @electriccloud What are the challenges of monolith decomposition?
  • 32. © Electric Cloud | electric-cloud.com | @electriccloud What are the challenges of Microservice release?
  • 33. © Electric Cloud | electric-cloud.com | @electriccloud Why DevOps + Microservices?
  • 34. © Electric Cloud | electric-cloud.com | @electriccloud How can you make Ops teams comfortable with Microservices?
  • 35. © Electric Cloud | electric-cloud.com | @electriccloud What is the future beyond Microservices?
  • 36. © Electric Cloud | electric-cloud.com | @electriccloud Resources • http://www.infoq.com/presentations/Breaking-the- Monolith • http://martinfowler.com/tags/microservices.html • http://www.amazon.com/Building-Microservices-Sam- Newman/dp/1491950358 • http://highscalability.com/blog/2014/7/28/the-great- microservices-vs-monolithic-apps-twitter-melee.html
  • 37. © Electric Cloud | electric-cloud.com | @electriccloud Thank you

Notes de l'éditeur

  1. Presentationstitle | Date
  2. For years, virtualization and cloud technologies have provided agile, on-demand infrastructure. The advent of Microservices promises even more agility– but what is required to take advantage of Microservices?   Join Electric Cloud CTO Anders Wallgren and Trace3 Principal Consultant - DevOps Marc Hornbeek as they discuss what is required to:   Overcome culture and architecture challenges created when decomposing monolithic applications into Microservices-based applications. Coordinate integration, testing, monitoring, packaging, release approval and deployment of Microservices-based applications over elastic infrastructures Create a controlled and auditable delivery pipeline to support Microservices-based application. Prepare for “future” applications, pipelines and patterns.   Attendees will receive a complimentary copy of the Gartner 2016 Application Release Automation Magic Quadrant.
  3. Divide and conquer complex distributed applications Loose coupling, so each service can: choose the tooling that’s appropriate for the problem it solves can be scaled as appropriate, independent of other services can have its own lifecycle independent of other services Makes it easier to adopt new technologies Smaller more autonomous teams are more productive Better resource utilization
  4. Can be easier to test Can be easier to develop Can be easier to deploy ------- Can’t deploy anything until you deploy everything Harder to learn and understand the code Easier to produce spaghetti code Hard to adopt new technologies You have to scale everything to scale anything
  5. Service composition is tricky to get right, can be expensive to change Inter-process failure modes have to be accounted for Abstractions look good on paper but beware of bottlenecks Service discovery
  6. Key message for this presentation: Agility and technology are business disruptors affecting customer competitive differentiation and business survival. Script: DevOps has become essential for business survival. Yet many businesses are struggling to understand and implement DevOps. Trace3 Enterprise Transformation Services help customers envision a DevOps solution. General instructions: