SlideShare a Scribd company logo
© Electric Cloud | electric-cloud.com | @electriccloud
A DevOps.com webinar featuring Jez Humble and Anders Wallgren
Get Loose! Microservices and Loosely
Coupled Architectures
© Electric Cloud | electric-cloud.com | @electriccloud
Speakers
Jez Humble
CTO, DORA. Author.
@jezhumble
Anders Wallgren
CTO, Electric Cloud
@anders_wallgren
/ @electriccloud - #ecwebinar
© Electric Cloud | electric-cloud.com | @electriccloud
Agenda
• What does the 2017 State Of DevOps Report
say about high-performers and loose
coupling?
• Why are Microservices a great choice for
creating loosely coupled systems?
• What are useful strategies to decompose,
test, deploy, and release mono+micro apps,
safely.
© Electric Cloud | electric-cloud.com | @electriccloud
Polling Question
© Electric Cloud | electric-cloud.com | @electriccloud
Predictors of DevOps Performance
Jez Humble
© Electric Cloud | electric-cloud.com | @electriccloud
Who took the survey
6
© Electric Cloud | electric-cloud.com | @electriccloud
High-performing teams continue to
achieve both faster throughput and
better stability.
© Electric Cloud | electric-cloud.com | @electriccloud
8
© Electric Cloud | electric-cloud.com | @electriccloud
9
© Electric Cloud | electric-cloud.com | @electriccloud
10
© Electric Cloud | electric-cloud.com | @electriccloud
Relationship between transformational leadership and
performance
11
© Electric Cloud | electric-cloud.com | @electriccloud
High performing organizations are twice as likely to
achieve or exceed goals
12
Non-commercial Goals
• Quantity of products or services
• Operating efficiency
• Customer satisfaction
• Quality of products or services
provided
• Achieving organizational and
mission goals
Commercial Goals
• Productivity
• Profitability
• Market Share
• # of customers
© Electric Cloud | electric-cloud.com | @electriccloud
13
Loosely coupled architectures and
teams are the strongest predictor of
continuous delivery.
© Electric Cloud | electric-cloud.com | @electriccloud
Architectural outcomes: can my team…
14
• …make large scale changes to the design of its system without the
permission of someone outside the team, or depending on other teams?
• ...complete its work without fine-grained communication and
coordination with people outside the team?
• ...deploy and release its product or service on demand, independently
of other services the product or service depends upon?
• ...do most of its testing on demand, without requiring an integrated test
environment?
• ...perform deployments during normal business hours with negligible
downtime?
© Electric Cloud | electric-cloud.com | @electriccloud
Conway’s Law
“organizations which design systems … are constrained
to produce designs which are copies of the
communication structures of these organizations”
© Electric Cloud | electric-cloud.com | @electriccloud
16
Lean product management drives
higher organizational performance.
© Electric Cloud | electric-cloud.com | @electriccloud
Lean Product Management Practices
17
• Working in small batches
• Making the flow of work visible through the
process
• Gathering, broadcasting and implementing
customer feedback
• Ability of teams to try out new ideas and
create and update specifications during the
development process
© Electric Cloud | electric-cloud.com | @electriccloud
Get your copy of the
2017 State of DevOps Report
puppet.com/state-of-devops-report
© Electric Cloud | electric-cloud.com | @electriccloud
Polling Question
© Electric Cloud | electric-cloud.com | @electriccloud
Microservices: A Primer
© Electric Cloud | electric-cloud.com | @electriccloud
Microservices
A suite of services, each focused on
doing one thing well
• Running in its own process
• Exposing an API
• Independently developed
• Independently deployable
Very useful when building loosely
coupled systems.
“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?
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…
Pros
• Can be easier to develop
• Can be easier to test
• Can be easier to deploy
Cons
• Easier to produce spaghetti code
• Can be harder to integrate new technologies
• Can be harder to learn and understand the code
• You have to scale everything to scale anything
• Can’t deploy anything until you deploy everything
© Electric Cloud | electric-cloud.com | @electriccloud
So…Was Fred Brooks Wrong?
NO, but….
A properlyconstructed
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
How do I know if Microservices are right… for me??
• If you already have solid CI, automated
testing, and automated deployment, and
you’re looking to scale, then maybe
• Don’t decompose prematurely
• Are you good at provisioning?
• Are you good at deployment?
• Are you good at monitoring?
• Do you have good domain/system
comprehension?
http://martinfowler.com/bliki/MicroservicePrerequisites.html
© Electric Cloud | electric-cloud.com | @electriccloud
Design Considerations For Microservices
• 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’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
Get Loose! Best Practices For
Decomposing The Monolith
© Electric Cloud | electric-cloud.com | @electriccloud
Decomposing (“eroding”) the monolith
• Be Agile in your efforts. Fowler’s Strangler Pattern.
• You’ll probably get it wrong the first time.
• Look for seams – areas of code that are independent,
focused around a single business capability
• Look for areas of code that change a lot
• Don’t ignore organizational structure (Conway’s Law)
• Domain-Driven Design (Domain Contexts) are useful
• Dependency analysis tools help, but are no panacea
• Yegge's rant
© Electric Cloud | electric-cloud.com | @electriccloud
Decomposing the monolith’s data
• RDBMS may well be your largest sourceof coupling
• Understand yourschema
• Foreign key constraints
• Shared mutable data
• Transactional boundaries
• Is eventual consistency OK?
• Avoid distributed transactions if possible
• Split data beforeyou split code
• Do you need an RDBMS at all or can you use NoSQL?
© Electric Cloud | electric-cloud.com | @electriccloud
Does Size Matter?
• The smaller the services, the more
potential decoupling benefit
• Be warned - the smaller the services,
the more moving parts you will have
• You should be able to (re-)rewrite one
service in a “small” number of weeks
• If you can’t update a service without
changing other things, it’s too large
© Electric Cloud | electric-cloud.com | @electriccloud
What about testing?
• Spend the time where you need but no
more than necessary
• Use service virtualization / stubbing /
mocking
• Consider using a single pipeline for end-
to-end tests
• Performance testing at the service level
is more important than in a monolith
• As always, flaky tests are the devil
© Electric Cloud | electric-cloud.com | @electriccloud
What about environments & deployment
• Automate all the things!
• Ensure fidelity of env’s throughout the pipeline
• One service per host
o Minimize the impact of one service on others
o Minimize the impact of a host outage
• Use VMs/containers to make life easier
o Containers map very well to microservices
o “Immutable servers”
• PaaS solutions can help, but can also constrain
© Electric Cloud | electric-cloud.com | @electriccloud
What about our Release Pipeline?
• Automate and Orchestrate all the things!
o Ideally, one platform for all software delivery (CD and
legacy, cloud, container)
• Govern the promotion of all the things!
o Understand pipeline and release statuses and any
dependencies or exceptions
• Make pipeline tools/environment agnostic
o Support each team’s workflow and tool chain
• One repository per service
o Independent CI and Deployment pipelines per
service
© Electric Cloud | electric-cloud.com | @electriccloud
What about our Release Pipeline (cont’d)?
• Enable self-service automation
o Standardize and operationalize to reduce
onboardingtime, waiting, complexity
• Monitor early and often
o Set up alerting; trigger automatic processes
(service rollback, scaling, etc)
• Track artifacts through the pipeline
o Who checked-in the code, test coverage and
quality, environments deployed to,
configurations used, approvers,etc)
• Assure security compliance
o Include security checks, acceptance tests
o Allow for both automatic and manual approval
gates
© Electric Cloud | electric-cloud.com | @electriccloud
Should I optimize for MTTR or MTBF?
• There is a point of diminishing returns with testing
(especially end-to-end testing)
• You may be better off getting really good at
remediating production problems
o Monitoring
o Very fast rollforward/rollback
o Blue/green deployments
o Canary deployments
• Not all services have the same durability
requirements
© Electric Cloud | electric-cloud.com | @electriccloud
Things to look out for: Monitoring
© Electric Cloud | electric-cloud.com | @electriccloud
Closing Thoughts on Loosely Coupled Systems
• It isn’t necessarily easier to do it this way…
• Services will evolve over time (you’ll split, re-merge…).
• Design for resiliency (e.g, use Hystrix from Netflix)
• Focus on centralized system visibility and reporting
• “The network is reliable” (and the rest of the 8 fallacies)
• “But my service relies on ServiceA vX -- now I’m down”
• Consider event-based techniques to decrease coupling
• Consistently log & monitor services
© Electric Cloud | electric-cloud.com | @electriccloud
Thank You
Telecom/Networking
Other Systems
ISV, Internet
& Entertainment
Heavy Industry
Financial
Services
Automotive Medical Devices
Semiconductor
Aerospace /
Defense
Mobile Devices
Q&A
© 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

More Related Content

What's hot

Greg Maxey - Electric Cloud - Process as Code: An Introduction to the Electri...
Greg Maxey - Electric Cloud - Process as Code: An Introduction to the Electri...Greg Maxey - Electric Cloud - Process as Code: An Introduction to the Electri...
Greg Maxey - Electric Cloud - Process as Code: An Introduction to the Electri...
DevOps Enterprise Summit
 
Sam Fell - Electric Cloud - Faster Continuous Integration with ElectricAccele...
Sam Fell - Electric Cloud - Faster Continuous Integration with ElectricAccele...Sam Fell - Electric Cloud - Faster Continuous Integration with ElectricAccele...
Sam Fell - Electric Cloud - Faster Continuous Integration with ElectricAccele...
DevOps Enterprise Summit
 
10 Do’s for DevOps!
 10 Do’s for DevOps!  10 Do’s for DevOps!
10 Do’s for DevOps!
DevOps.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 ElectricFlow
DevOps Enterprise Summit
 
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
TechWell
 
OpenStack at EBSCO
OpenStack at EBSCOOpenStack at EBSCO
OpenStack at EBSCO
Tesora
 
From Monolith to Microservices – and Beyond!
From Monolith to Microservices – and Beyond!From Monolith to Microservices – and Beyond!
From Monolith to Microservices – and Beyond!
Jules Pierre-Louis
 
Rebooting the OpenContrail Community
Rebooting the OpenContrail CommunityRebooting the OpenContrail Community
Rebooting the OpenContrail Community
Randy Bias
 
OpenStack in the Enterprise - NJ VMUG June 9, 2015 - Melissa Palmer
OpenStack in the Enterprise - NJ VMUG June 9, 2015 - Melissa PalmerOpenStack in the Enterprise - NJ VMUG June 9, 2015 - Melissa Palmer
OpenStack in the Enterprise - NJ VMUG June 9, 2015 - Melissa Palmer
vmiss33
 
Monktoberfest Fast Delivery
Monktoberfest Fast DeliveryMonktoberfest Fast Delivery
Monktoberfest Fast Delivery
Adrian Cockcroft
 
Why Distributed Databases?
Why Distributed Databases?Why Distributed Databases?
Why Distributed Databases?
Sargun Dhillon
 
Network Reliability Engineering and DevNetOps - Presented at ONS March 2018
Network Reliability Engineering and DevNetOps - Presented at ONS March 2018Network Reliability Engineering and DevNetOps - Presented at ONS March 2018
Network Reliability Engineering and DevNetOps - Presented at ONS March 2018
James Kelly
 
ITLCHN 18 - Automation & DevOps - Automic
ITLCHN 18 -  Automation & DevOps - AutomicITLCHN 18 -  Automation & DevOps - Automic
ITLCHN 18 - Automation & DevOps - Automic
IT Expert Club
 
Intro to Databases
Intro to DatabasesIntro to Databases
Intro to Databases
Sargun Dhillon
 
MassTLC Cloud Summit Keynote
MassTLC Cloud Summit KeynoteMassTLC Cloud Summit Keynote
MassTLC Cloud Summit Keynote
Ariel Tseitlin
 
DevOps and Cloud Tips and Techniques to Revolutionize Your SDLC
DevOps and Cloud Tips and Techniques to Revolutionize Your SDLCDevOps and Cloud Tips and Techniques to Revolutionize Your SDLC
DevOps and Cloud Tips and Techniques to Revolutionize Your SDLC
CA Technologies
 
Epidemic Failures
Epidemic FailuresEpidemic Failures
Epidemic Failures
Adrian Cockcroft
 
Challenges in Practicing High Frequency Releases in Cloud Environments
Challenges in Practicing High Frequency Releases in Cloud Environments Challenges in Practicing High Frequency Releases in Cloud Environments
Challenges in Practicing High Frequency Releases in Cloud Environments
Liming Zhu
 
Openstack Silicon Valley - Vendor Lock In
Openstack Silicon Valley - Vendor Lock InOpenstack Silicon Valley - Vendor Lock In
Openstack Silicon Valley - Vendor Lock In
Adrian Cockcroft
 
GGX 2014 Lari Hotari Modular Monoliths with Spring Boot and Grails 3
GGX 2014 Lari Hotari Modular Monoliths with Spring Boot and Grails 3GGX 2014 Lari Hotari Modular Monoliths with Spring Boot and Grails 3
GGX 2014 Lari Hotari Modular Monoliths with Spring Boot and Grails 3
Lari Hotari
 

What's hot (20)

Greg Maxey - Electric Cloud - Process as Code: An Introduction to the Electri...
Greg Maxey - Electric Cloud - Process as Code: An Introduction to the Electri...Greg Maxey - Electric Cloud - Process as Code: An Introduction to the Electri...
Greg Maxey - Electric Cloud - Process as Code: An Introduction to the Electri...
 
Sam Fell - Electric Cloud - Faster Continuous Integration with ElectricAccele...
Sam Fell - Electric Cloud - Faster Continuous Integration with ElectricAccele...Sam Fell - Electric Cloud - Faster Continuous Integration with ElectricAccele...
Sam Fell - Electric Cloud - Faster Continuous Integration with ElectricAccele...
 
10 Do’s for DevOps!
 10 Do’s for DevOps!  10 Do’s for DevOps!
10 Do’s for DevOps!
 
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
 
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
 
OpenStack at EBSCO
OpenStack at EBSCOOpenStack at EBSCO
OpenStack at EBSCO
 
From Monolith to Microservices – and Beyond!
From Monolith to Microservices – and Beyond!From Monolith to Microservices – and Beyond!
From Monolith to Microservices – and Beyond!
 
Rebooting the OpenContrail Community
Rebooting the OpenContrail CommunityRebooting the OpenContrail Community
Rebooting the OpenContrail Community
 
OpenStack in the Enterprise - NJ VMUG June 9, 2015 - Melissa Palmer
OpenStack in the Enterprise - NJ VMUG June 9, 2015 - Melissa PalmerOpenStack in the Enterprise - NJ VMUG June 9, 2015 - Melissa Palmer
OpenStack in the Enterprise - NJ VMUG June 9, 2015 - Melissa Palmer
 
Monktoberfest Fast Delivery
Monktoberfest Fast DeliveryMonktoberfest Fast Delivery
Monktoberfest Fast Delivery
 
Why Distributed Databases?
Why Distributed Databases?Why Distributed Databases?
Why Distributed Databases?
 
Network Reliability Engineering and DevNetOps - Presented at ONS March 2018
Network Reliability Engineering and DevNetOps - Presented at ONS March 2018Network Reliability Engineering and DevNetOps - Presented at ONS March 2018
Network Reliability Engineering and DevNetOps - Presented at ONS March 2018
 
ITLCHN 18 - Automation & DevOps - Automic
ITLCHN 18 -  Automation & DevOps - AutomicITLCHN 18 -  Automation & DevOps - Automic
ITLCHN 18 - Automation & DevOps - Automic
 
Intro to Databases
Intro to DatabasesIntro to Databases
Intro to Databases
 
MassTLC Cloud Summit Keynote
MassTLC Cloud Summit KeynoteMassTLC Cloud Summit Keynote
MassTLC Cloud Summit Keynote
 
DevOps and Cloud Tips and Techniques to Revolutionize Your SDLC
DevOps and Cloud Tips and Techniques to Revolutionize Your SDLCDevOps and Cloud Tips and Techniques to Revolutionize Your SDLC
DevOps and Cloud Tips and Techniques to Revolutionize Your SDLC
 
Epidemic Failures
Epidemic FailuresEpidemic Failures
Epidemic Failures
 
Challenges in Practicing High Frequency Releases in Cloud Environments
Challenges in Practicing High Frequency Releases in Cloud Environments Challenges in Practicing High Frequency Releases in Cloud Environments
Challenges in Practicing High Frequency Releases in Cloud Environments
 
Openstack Silicon Valley - Vendor Lock In
Openstack Silicon Valley - Vendor Lock InOpenstack Silicon Valley - Vendor Lock In
Openstack Silicon Valley - Vendor Lock In
 
GGX 2014 Lari Hotari Modular Monoliths with Spring Boot and Grails 3
GGX 2014 Lari Hotari Modular Monoliths with Spring Boot and Grails 3GGX 2014 Lari Hotari Modular Monoliths with Spring Boot and Grails 3
GGX 2014 Lari Hotari Modular Monoliths with Spring Boot and Grails 3
 

Similar to Get Loose! Microservices and Loosely Coupled Architectures

The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data
The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data
The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data
DataCentred
 
Microservices Architecture
Microservices ArchitectureMicroservices Architecture
Microservices Architecture
Srinivasan Nanduri
 
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
DevOps.com
 
The move-to-hybrid-cloud-itsmf-april2015
The move-to-hybrid-cloud-itsmf-april2015The move-to-hybrid-cloud-itsmf-april2015
The move-to-hybrid-cloud-itsmf-april2015
Eduserv
 
Diving Deeper into DevOps Deployments
Diving Deeper into DevOps DeploymentsDiving Deeper into DevOps Deployments
Diving Deeper into DevOps Deployments
Jules Pierre-Louis
 
Microservices - Scaling Development and Service
Microservices - Scaling Development and ServiceMicroservices - Scaling Development and Service
Microservices - Scaling Development and Service
Paulo Gaspar
 
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
Randy Shoup
 
Technology insights: Decision Science Platform
Technology insights: Decision Science PlatformTechnology insights: Decision Science Platform
Technology insights: Decision Science Platform
Decision Science Community
 
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
DevOps.com
 
Cloud Computing and Virtualization Overview by Amr Ali
Cloud Computing and Virtualization Overview by Amr AliCloud Computing and Virtualization Overview by Amr Ali
Cloud Computing and Virtualization Overview by Amr Ali
Amr Ali
 
NUS-ISS Learning Day 2018- Designing software to make the most of cloud platf...
NUS-ISS Learning Day 2018- Designing software to make the most of cloud platf...NUS-ISS Learning Day 2018- Designing software to make the most of cloud platf...
NUS-ISS Learning Day 2018- Designing software to make the most of cloud platf...
NUS-ISS
 
Uncovering the Cloud: Is it Right for You? - Marco
Uncovering the Cloud: Is it Right for You? - MarcoUncovering the Cloud: Is it Right for You? - Marco
Uncovering the Cloud: Is it Right for You? - Marco
MarcoTechnologies
 
Microservices: Yes or not?
Microservices: Yes or not?Microservices: Yes or not?
Microservices: Yes or not?
Eduard Tomàs
 
estrat AWS Cloud Breakfast
estrat AWS Cloud Breakfastestrat AWS Cloud Breakfast
estrat AWS Cloud Breakfast
Paul Cooper
 
The Rocky Cloud Road
The Rocky Cloud RoadThe Rocky Cloud Road
The Rocky Cloud Road
Gert Drapers
 
Cloud Foundry Technical Overview at IBM Interconnect 2016
Cloud Foundry Technical Overview at IBM Interconnect 2016Cloud Foundry Technical Overview at IBM Interconnect 2016
Cloud Foundry Technical Overview at IBM Interconnect 2016
Stormy Peters
 
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
DevOps.com
 
From the Monolith to Microservices - CraftConf 2015
From the Monolith to Microservices - CraftConf 2015From the Monolith to Microservices - CraftConf 2015
From the Monolith to Microservices - CraftConf 2015
Randy Shoup
 
DevOps Patterns to Enable Success in Microservices
DevOps Patterns to Enable Success in MicroservicesDevOps Patterns to Enable Success in Microservices
DevOps Patterns to Enable Success in Microservices
Rich Mills
 
Iot cloud service v2.0
Iot cloud service v2.0Iot cloud service v2.0
Iot cloud service v2.0
Vinod Wilson
 

Similar to Get Loose! Microservices and Loosely Coupled Architectures (20)

The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data
The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data
The Effectiveness, Efficiency and Legitimacy of Outsourcing Your Data
 
Microservices Architecture
Microservices ArchitectureMicroservices Architecture
Microservices Architecture
 
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
 
The move-to-hybrid-cloud-itsmf-april2015
The move-to-hybrid-cloud-itsmf-april2015The move-to-hybrid-cloud-itsmf-april2015
The move-to-hybrid-cloud-itsmf-april2015
 
Diving Deeper into DevOps Deployments
Diving Deeper into DevOps DeploymentsDiving Deeper into DevOps Deployments
Diving Deeper into DevOps Deployments
 
Microservices - Scaling Development and Service
Microservices - Scaling Development and ServiceMicroservices - Scaling Development and Service
Microservices - Scaling Development and Service
 
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
 
Technology insights: Decision Science Platform
Technology insights: Decision Science PlatformTechnology insights: Decision Science Platform
Technology insights: Decision Science Platform
 
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
 
Cloud Computing and Virtualization Overview by Amr Ali
Cloud Computing and Virtualization Overview by Amr AliCloud Computing and Virtualization Overview by Amr Ali
Cloud Computing and Virtualization Overview by Amr Ali
 
NUS-ISS Learning Day 2018- Designing software to make the most of cloud platf...
NUS-ISS Learning Day 2018- Designing software to make the most of cloud platf...NUS-ISS Learning Day 2018- Designing software to make the most of cloud platf...
NUS-ISS Learning Day 2018- Designing software to make the most of cloud platf...
 
Uncovering the Cloud: Is it Right for You? - Marco
Uncovering the Cloud: Is it Right for You? - MarcoUncovering the Cloud: Is it Right for You? - Marco
Uncovering the Cloud: Is it Right for You? - Marco
 
Microservices: Yes or not?
Microservices: Yes or not?Microservices: Yes or not?
Microservices: Yes or not?
 
estrat AWS Cloud Breakfast
estrat AWS Cloud Breakfastestrat AWS Cloud Breakfast
estrat AWS Cloud Breakfast
 
The Rocky Cloud Road
The Rocky Cloud RoadThe Rocky Cloud Road
The Rocky Cloud Road
 
Cloud Foundry Technical Overview at IBM Interconnect 2016
Cloud Foundry Technical Overview at IBM Interconnect 2016Cloud Foundry Technical Overview at IBM Interconnect 2016
Cloud Foundry Technical Overview at IBM Interconnect 2016
 
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
 
From the Monolith to Microservices - CraftConf 2015
From the Monolith to Microservices - CraftConf 2015From the Monolith to Microservices - CraftConf 2015
From the Monolith to Microservices - CraftConf 2015
 
DevOps Patterns to Enable Success in Microservices
DevOps Patterns to Enable Success in MicroservicesDevOps Patterns to Enable Success in Microservices
DevOps Patterns to Enable Success in Microservices
 
Iot cloud service v2.0
Iot cloud service v2.0Iot cloud service v2.0
Iot cloud service v2.0
 

More from Deborah Schalm

Exploring Prometheus: Combining Metrics and Alerting to Improve Incident Mana...
Exploring Prometheus: Combining Metrics and Alerting to Improve Incident Mana...Exploring Prometheus: Combining Metrics and Alerting to Improve Incident Mana...
Exploring Prometheus: Combining Metrics and Alerting to Improve Incident Mana...
Deborah Schalm
 
Discovering Dark Debt in your Culture
Discovering Dark Debt in your CultureDiscovering Dark Debt in your Culture
Discovering Dark Debt in your Culture
Deborah Schalm
 
A Discussion of Automated Infrastructure Security with a Practical Example
A Discussion of Automated Infrastructure Security with a Practical ExampleA Discussion of Automated Infrastructure Security with a Practical Example
A Discussion of Automated Infrastructure Security with a Practical Example
Deborah Schalm
 
Protect Your Organization Against Known Security Defects
Protect Your Organization Against Known Security DefectsProtect Your Organization Against Known Security Defects
Protect Your Organization Against Known Security Defects
Deborah Schalm
 
Putting the Ops in DevOps
Putting the Ops in DevOpsPutting the Ops in DevOps
Putting the Ops in DevOps
Deborah Schalm
 
Machine Learning to Turbo-Charge the Ops Portion of DevOps
Machine Learning to Turbo-Charge the Ops Portion of DevOpsMachine Learning to Turbo-Charge the Ops Portion of DevOps
Machine Learning to Turbo-Charge the Ops Portion of DevOps
Deborah Schalm
 
Post-Equifax: How to Trust But Verify Your Software Supply Chain
Post-Equifax: How to Trust But Verify Your Software Supply ChainPost-Equifax: How to Trust But Verify Your Software Supply Chain
Post-Equifax: How to Trust But Verify Your Software Supply Chain
Deborah Schalm
 
30 Minutes to a Private Cloud
30 Minutes to a Private Cloud30 Minutes to a Private Cloud
30 Minutes to a Private Cloud
Deborah Schalm
 
Taking DevOps Monitoring to the Next Level - The 5 Step Guide to Monitoring N...
Taking DevOps Monitoring to the Next Level - The 5 Step Guide to Monitoring N...Taking DevOps Monitoring to the Next Level - The 5 Step Guide to Monitoring N...
Taking DevOps Monitoring to the Next Level - The 5 Step Guide to Monitoring N...
Deborah Schalm
 
Top 5 Considerations for Operating a Kubernetes Environment at Scale
Top 5 Considerations for Operating a Kubernetes Environment at ScaleTop 5 Considerations for Operating a Kubernetes Environment at Scale
Top 5 Considerations for Operating a Kubernetes Environment at Scale
Deborah Schalm
 
Is a Monolith Standing in the Way of Your Digital Transformation? Refactor fo...
Is a Monolith Standing in the Way of Your Digital Transformation? Refactor fo...Is a Monolith Standing in the Way of Your Digital Transformation? Refactor fo...
Is a Monolith Standing in the Way of Your Digital Transformation? Refactor fo...
Deborah Schalm
 
EMA: Ten Priorities for Hybrid Cloud, Containers and DevOps in 2017
EMA: Ten Priorities for Hybrid Cloud, Containers and DevOps in 2017EMA: Ten Priorities for Hybrid Cloud, Containers and DevOps in 2017
EMA: Ten Priorities for Hybrid Cloud, Containers and DevOps in 2017
Deborah Schalm
 
Application Discovery! The Gift That Keeps on Giving
Application Discovery! The Gift That Keeps on GivingApplication Discovery! The Gift That Keeps on Giving
Application Discovery! The Gift That Keeps on Giving
Deborah Schalm
 
Top 5 Challenges in Scaling DevOps in Brownfield Environments
Top 5 Challenges in Scaling DevOps in Brownfield EnvironmentsTop 5 Challenges in Scaling DevOps in Brownfield Environments
Top 5 Challenges in Scaling DevOps in Brownfield Environments
Deborah Schalm
 
The Coming Earthquake in WebSphere Application Server Configuration Management
The Coming Earthquake in WebSphere Application Server Configuration ManagementThe Coming Earthquake in WebSphere Application Server Configuration Management
The Coming Earthquake in WebSphere Application Server Configuration Management
Deborah Schalm
 
Planet of the APIs: Monitoring Transactions in the Wild
Planet of the APIs: Monitoring Transactions in the WildPlanet of the APIs: Monitoring Transactions in the Wild
Planet of the APIs: Monitoring Transactions in the Wild
Deborah Schalm
 
Proactive Monitoring: Playing Offense for the Win
Proactive Monitoring: Playing Offense for the WinProactive Monitoring: Playing Offense for the Win
Proactive Monitoring: Playing Offense for the Win
Deborah Schalm
 
No Tool is an Island: Building DevOps into your business
No Tool is an Island: Building DevOps into your businessNo Tool is an Island: Building DevOps into your business
No Tool is an Island: Building DevOps into your business
Deborah Schalm
 
Scale Continuous Deployment to Production with DeployHub and CloudBees
Scale Continuous Deployment to Production with DeployHub and CloudBeesScale Continuous Deployment to Production with DeployHub and CloudBees
Scale Continuous Deployment to Production with DeployHub and CloudBees
Deborah Schalm
 
Monitoring First - Instrumenting Your Entire Stack for the Ultimate in Observ...
Monitoring First - Instrumenting Your Entire Stack for the Ultimate in Observ...Monitoring First - Instrumenting Your Entire Stack for the Ultimate in Observ...
Monitoring First - Instrumenting Your Entire Stack for the Ultimate in Observ...
Deborah Schalm
 

More from Deborah Schalm (20)

Exploring Prometheus: Combining Metrics and Alerting to Improve Incident Mana...
Exploring Prometheus: Combining Metrics and Alerting to Improve Incident Mana...Exploring Prometheus: Combining Metrics and Alerting to Improve Incident Mana...
Exploring Prometheus: Combining Metrics and Alerting to Improve Incident Mana...
 
Discovering Dark Debt in your Culture
Discovering Dark Debt in your CultureDiscovering Dark Debt in your Culture
Discovering Dark Debt in your Culture
 
A Discussion of Automated Infrastructure Security with a Practical Example
A Discussion of Automated Infrastructure Security with a Practical ExampleA Discussion of Automated Infrastructure Security with a Practical Example
A Discussion of Automated Infrastructure Security with a Practical Example
 
Protect Your Organization Against Known Security Defects
Protect Your Organization Against Known Security DefectsProtect Your Organization Against Known Security Defects
Protect Your Organization Against Known Security Defects
 
Putting the Ops in DevOps
Putting the Ops in DevOpsPutting the Ops in DevOps
Putting the Ops in DevOps
 
Machine Learning to Turbo-Charge the Ops Portion of DevOps
Machine Learning to Turbo-Charge the Ops Portion of DevOpsMachine Learning to Turbo-Charge the Ops Portion of DevOps
Machine Learning to Turbo-Charge the Ops Portion of DevOps
 
Post-Equifax: How to Trust But Verify Your Software Supply Chain
Post-Equifax: How to Trust But Verify Your Software Supply ChainPost-Equifax: How to Trust But Verify Your Software Supply Chain
Post-Equifax: How to Trust But Verify Your Software Supply Chain
 
30 Minutes to a Private Cloud
30 Minutes to a Private Cloud30 Minutes to a Private Cloud
30 Minutes to a Private Cloud
 
Taking DevOps Monitoring to the Next Level - The 5 Step Guide to Monitoring N...
Taking DevOps Monitoring to the Next Level - The 5 Step Guide to Monitoring N...Taking DevOps Monitoring to the Next Level - The 5 Step Guide to Monitoring N...
Taking DevOps Monitoring to the Next Level - The 5 Step Guide to Monitoring N...
 
Top 5 Considerations for Operating a Kubernetes Environment at Scale
Top 5 Considerations for Operating a Kubernetes Environment at ScaleTop 5 Considerations for Operating a Kubernetes Environment at Scale
Top 5 Considerations for Operating a Kubernetes Environment at Scale
 
Is a Monolith Standing in the Way of Your Digital Transformation? Refactor fo...
Is a Monolith Standing in the Way of Your Digital Transformation? Refactor fo...Is a Monolith Standing in the Way of Your Digital Transformation? Refactor fo...
Is a Monolith Standing in the Way of Your Digital Transformation? Refactor fo...
 
EMA: Ten Priorities for Hybrid Cloud, Containers and DevOps in 2017
EMA: Ten Priorities for Hybrid Cloud, Containers and DevOps in 2017EMA: Ten Priorities for Hybrid Cloud, Containers and DevOps in 2017
EMA: Ten Priorities for Hybrid Cloud, Containers and DevOps in 2017
 
Application Discovery! The Gift That Keeps on Giving
Application Discovery! The Gift That Keeps on GivingApplication Discovery! The Gift That Keeps on Giving
Application Discovery! The Gift That Keeps on Giving
 
Top 5 Challenges in Scaling DevOps in Brownfield Environments
Top 5 Challenges in Scaling DevOps in Brownfield EnvironmentsTop 5 Challenges in Scaling DevOps in Brownfield Environments
Top 5 Challenges in Scaling DevOps in Brownfield Environments
 
The Coming Earthquake in WebSphere Application Server Configuration Management
The Coming Earthquake in WebSphere Application Server Configuration ManagementThe Coming Earthquake in WebSphere Application Server Configuration Management
The Coming Earthquake in WebSphere Application Server Configuration Management
 
Planet of the APIs: Monitoring Transactions in the Wild
Planet of the APIs: Monitoring Transactions in the WildPlanet of the APIs: Monitoring Transactions in the Wild
Planet of the APIs: Monitoring Transactions in the Wild
 
Proactive Monitoring: Playing Offense for the Win
Proactive Monitoring: Playing Offense for the WinProactive Monitoring: Playing Offense for the Win
Proactive Monitoring: Playing Offense for the Win
 
No Tool is an Island: Building DevOps into your business
No Tool is an Island: Building DevOps into your businessNo Tool is an Island: Building DevOps into your business
No Tool is an Island: Building DevOps into your business
 
Scale Continuous Deployment to Production with DeployHub and CloudBees
Scale Continuous Deployment to Production with DeployHub and CloudBeesScale Continuous Deployment to Production with DeployHub and CloudBees
Scale Continuous Deployment to Production with DeployHub and CloudBees
 
Monitoring First - Instrumenting Your Entire Stack for the Ultimate in Observ...
Monitoring First - Instrumenting Your Entire Stack for the Ultimate in Observ...Monitoring First - Instrumenting Your Entire Stack for the Ultimate in Observ...
Monitoring First - Instrumenting Your Entire Stack for the Ultimate in Observ...
 

Recently uploaded

Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
abdulrafaychaudhry
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
XfilesPro
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
XfilesPro
 
Strategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptxStrategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptx
varshanayak241
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
Tier1 app
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
vrstrong314
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Globus
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
informapgpstrackings
 
Why React Native as a Strategic Advantage for Startup Innovation.pdf
Why React Native as a Strategic Advantage for Startup Innovation.pdfWhy React Native as a Strategic Advantage for Startup Innovation.pdf
Why React Native as a Strategic Advantage for Startup Innovation.pdf
ayushiqss
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
Designing for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web ServicesDesigning for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web Services
KrzysztofKkol1
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
wottaspaceseo
 
De mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FMEDe mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FME
Jelle | Nordend
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
Globus
 

Recently uploaded (20)

Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
 
Strategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptxStrategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptx
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
Why React Native as a Strategic Advantage for Startup Innovation.pdf
Why React Native as a Strategic Advantage for Startup Innovation.pdfWhy React Native as a Strategic Advantage for Startup Innovation.pdf
Why React Native as a Strategic Advantage for Startup Innovation.pdf
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
Designing for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web ServicesDesigning for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web Services
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
De mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FMEDe mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FME
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
 

Get Loose! Microservices and Loosely Coupled Architectures

  • 1. © Electric Cloud | electric-cloud.com | @electriccloud A DevOps.com webinar featuring Jez Humble and Anders Wallgren Get Loose! Microservices and Loosely Coupled Architectures
  • 2. © Electric Cloud | electric-cloud.com | @electriccloud Speakers Jez Humble CTO, DORA. Author. @jezhumble Anders Wallgren CTO, Electric Cloud @anders_wallgren / @electriccloud - #ecwebinar
  • 3. © Electric Cloud | electric-cloud.com | @electriccloud Agenda • What does the 2017 State Of DevOps Report say about high-performers and loose coupling? • Why are Microservices a great choice for creating loosely coupled systems? • What are useful strategies to decompose, test, deploy, and release mono+micro apps, safely.
  • 4. © Electric Cloud | electric-cloud.com | @electriccloud Polling Question
  • 5. © Electric Cloud | electric-cloud.com | @electriccloud Predictors of DevOps Performance Jez Humble
  • 6. © Electric Cloud | electric-cloud.com | @electriccloud Who took the survey 6
  • 7. © Electric Cloud | electric-cloud.com | @electriccloud High-performing teams continue to achieve both faster throughput and better stability.
  • 8. © Electric Cloud | electric-cloud.com | @electriccloud 8
  • 9. © Electric Cloud | electric-cloud.com | @electriccloud 9
  • 10. © Electric Cloud | electric-cloud.com | @electriccloud 10
  • 11. © Electric Cloud | electric-cloud.com | @electriccloud Relationship between transformational leadership and performance 11
  • 12. © Electric Cloud | electric-cloud.com | @electriccloud High performing organizations are twice as likely to achieve or exceed goals 12 Non-commercial Goals • Quantity of products or services • Operating efficiency • Customer satisfaction • Quality of products or services provided • Achieving organizational and mission goals Commercial Goals • Productivity • Profitability • Market Share • # of customers
  • 13. © Electric Cloud | electric-cloud.com | @electriccloud 13 Loosely coupled architectures and teams are the strongest predictor of continuous delivery.
  • 14. © Electric Cloud | electric-cloud.com | @electriccloud Architectural outcomes: can my team… 14 • …make large scale changes to the design of its system without the permission of someone outside the team, or depending on other teams? • ...complete its work without fine-grained communication and coordination with people outside the team? • ...deploy and release its product or service on demand, independently of other services the product or service depends upon? • ...do most of its testing on demand, without requiring an integrated test environment? • ...perform deployments during normal business hours with negligible downtime?
  • 15. © Electric Cloud | electric-cloud.com | @electriccloud Conway’s Law “organizations which design systems … are constrained to produce designs which are copies of the communication structures of these organizations”
  • 16. © Electric Cloud | electric-cloud.com | @electriccloud 16 Lean product management drives higher organizational performance.
  • 17. © Electric Cloud | electric-cloud.com | @electriccloud Lean Product Management Practices 17 • Working in small batches • Making the flow of work visible through the process • Gathering, broadcasting and implementing customer feedback • Ability of teams to try out new ideas and create and update specifications during the development process
  • 18. © Electric Cloud | electric-cloud.com | @electriccloud Get your copy of the 2017 State of DevOps Report puppet.com/state-of-devops-report
  • 19. © Electric Cloud | electric-cloud.com | @electriccloud Polling Question
  • 20. © Electric Cloud | electric-cloud.com | @electriccloud Microservices: A Primer
  • 21. © Electric Cloud | electric-cloud.com | @electriccloud Microservices A suite of services, each focused on doing one thing well • Running in its own process • Exposing an API • Independently developed • Independently deployable Very useful when building loosely coupled systems. “Gather together those things that change for the same reason, and separate those things that change for different reasons.” – Robert Martin
  • 22. © 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
  • 23. © Electric Cloud | electric-cloud.com | @electriccloud Monolithic Apps The good, the bad, the ugly… Pros • Can be easier to develop • Can be easier to test • Can be easier to deploy Cons • Easier to produce spaghetti code • Can be harder to integrate new technologies • Can be harder to learn and understand the code • You have to scale everything to scale anything • Can’t deploy anything until you deploy everything
  • 24. © Electric Cloud | electric-cloud.com | @electriccloud So…Was Fred Brooks Wrong? NO, but…. A properlyconstructed microservices architecture makes it vastly easier to scale teams and scale applications https://puppetlabs.com/2015-devops-report-ppc
  • 25. © Electric Cloud | electric-cloud.com | @electriccloud How do I know if Microservices are right… for me?? • If you already have solid CI, automated testing, and automated deployment, and you’re looking to scale, then maybe • Don’t decompose prematurely • Are you good at provisioning? • Are you good at deployment? • Are you good at monitoring? • Do you have good domain/system comprehension? http://martinfowler.com/bliki/MicroservicePrerequisites.html
  • 26. © Electric Cloud | electric-cloud.com | @electriccloud Design Considerations For Microservices • 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
  • 27. © 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?
  • 28. © Electric Cloud | electric-cloud.com | @electriccloud Get Loose! Best Practices For Decomposing The Monolith
  • 29. © Electric Cloud | electric-cloud.com | @electriccloud Decomposing (“eroding”) the monolith • Be Agile in your efforts. Fowler’s Strangler Pattern. • You’ll probably get it wrong the first time. • Look for seams – areas of code that are independent, focused around a single business capability • Look for areas of code that change a lot • Don’t ignore organizational structure (Conway’s Law) • Domain-Driven Design (Domain Contexts) are useful • Dependency analysis tools help, but are no panacea • Yegge's rant
  • 30. © Electric Cloud | electric-cloud.com | @electriccloud Decomposing the monolith’s data • RDBMS may well be your largest sourceof coupling • Understand yourschema • Foreign key constraints • Shared mutable data • Transactional boundaries • Is eventual consistency OK? • Avoid distributed transactions if possible • Split data beforeyou split code • Do you need an RDBMS at all or can you use NoSQL?
  • 31. © Electric Cloud | electric-cloud.com | @electriccloud Does Size Matter? • The smaller the services, the more potential decoupling benefit • Be warned - the smaller the services, the more moving parts you will have • You should be able to (re-)rewrite one service in a “small” number of weeks • If you can’t update a service without changing other things, it’s too large
  • 32. © Electric Cloud | electric-cloud.com | @electriccloud What about testing? • Spend the time where you need but no more than necessary • Use service virtualization / stubbing / mocking • Consider using a single pipeline for end- to-end tests • Performance testing at the service level is more important than in a monolith • As always, flaky tests are the devil
  • 33. © Electric Cloud | electric-cloud.com | @electriccloud What about environments & deployment • Automate all the things! • Ensure fidelity of env’s throughout the pipeline • One service per host o Minimize the impact of one service on others o Minimize the impact of a host outage • Use VMs/containers to make life easier o Containers map very well to microservices o “Immutable servers” • PaaS solutions can help, but can also constrain
  • 34. © Electric Cloud | electric-cloud.com | @electriccloud What about our Release Pipeline? • Automate and Orchestrate all the things! o Ideally, one platform for all software delivery (CD and legacy, cloud, container) • Govern the promotion of all the things! o Understand pipeline and release statuses and any dependencies or exceptions • Make pipeline tools/environment agnostic o Support each team’s workflow and tool chain • One repository per service o Independent CI and Deployment pipelines per service
  • 35. © Electric Cloud | electric-cloud.com | @electriccloud What about our Release Pipeline (cont’d)? • Enable self-service automation o Standardize and operationalize to reduce onboardingtime, waiting, complexity • Monitor early and often o Set up alerting; trigger automatic processes (service rollback, scaling, etc) • Track artifacts through the pipeline o Who checked-in the code, test coverage and quality, environments deployed to, configurations used, approvers,etc) • Assure security compliance o Include security checks, acceptance tests o Allow for both automatic and manual approval gates
  • 36. © Electric Cloud | electric-cloud.com | @electriccloud Should I optimize for MTTR or MTBF? • There is a point of diminishing returns with testing (especially end-to-end testing) • You may be better off getting really good at remediating production problems o Monitoring o Very fast rollforward/rollback o Blue/green deployments o Canary deployments • Not all services have the same durability requirements
  • 37. © Electric Cloud | electric-cloud.com | @electriccloud Things to look out for: Monitoring
  • 38. © Electric Cloud | electric-cloud.com | @electriccloud Closing Thoughts on Loosely Coupled Systems • It isn’t necessarily easier to do it this way… • Services will evolve over time (you’ll split, re-merge…). • Design for resiliency (e.g, use Hystrix from Netflix) • Focus on centralized system visibility and reporting • “The network is reliable” (and the rest of the 8 fallacies) • “But my service relies on ServiceA vX -- now I’m down” • Consider event-based techniques to decrease coupling • Consistently log & monitor services
  • 39. © Electric Cloud | electric-cloud.com | @electriccloud Thank You Telecom/Networking Other Systems ISV, Internet & Entertainment Heavy Industry Financial Services Automotive Medical Devices Semiconductor Aerospace / Defense Mobile Devices Q&A
  • 40. © 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