SlideShare a Scribd company logo
Microservices
without the hype
Definition of Microservices
• SOA without the vendors
• + Lessons learned after 10+ years:
– REST >> SOAP
– Simplicity
– Higher granularity -> Micro
SOA Principles – Still valid
• High decoupling:
– Service has its own lifecycle
• Allows releasing often with fewer changes with lower risk
• Rolling upgrades
• Canaries
– Isolation
• Communication through well defined interfaces, usually
remote
• Share nothing, service owns its persistence schema
– Stateless
• Clients maintain state for the flow
SOA Principles - Lessons Learned
• SOAP model is too rigid, REST is extensible
• Clients everywhere: HTML, devices, M2M, IoT
• Backwards compatibility is a must, usually we do
not own clients
• Design the interface upfront, aim for consensus
with client developers if feasible
• Refactor or rebuild the service, the smaller the
service the cheaper to refactor/rebuild. Just keep
the interfaces untouched
SOA Principles - Lessons Learned II
• Resource versioning when backwards compatibility is not possible,
adds lots of complexity, code forking
• HTTP as standard: Load Balancers, Proxies, Firewalls. Still more
communication mechanisms are required, mostly intra-dc: Kafka,
RabbitMQ, Akka cluster, etc
• Remote interfaces promote better isolation than local interfaces.
• Enhances team autonomy, easier to experiment new technologies
in smaller services that can be rewritten if necessary. REST
interfaces are quite agnostic of implementation technology
• Strong Functional and Regression Testing – more exposed interfaces
mean that more effort is required to assess the services data and
behavior is correct
• Integration tests are costly – lots of integration points to test,
system is complex so having a working integration environment is
difficult and costly.
Micro, nano or pico??
• Service granularity depends on several factors:
– Organizational: Conway’s Law
– Latency: The more granular, the more latency we
add, more so in the high percentiles
– Release policy
– Integration testing
Risks and caveats
• Services too small:
– Risk of becoming orphaned, no team maintaining it
– Chattiness, client needs to talk to multiple services for a given
functionality
• Too coarse:
– more changes in each release
– More difficult to refactor
• Backwards compatibility is expensive
• Somewhat chaotic systems and organization, difficult to have the
whole picture, less standarized and more distributed
• Complex systems design as everything is distributed
• Complex debugging as a transaction usually flows through several
services
Related Topics
• Continuous Delivery – Microservices are deployed often, CD
is almost a requirement to deploy as often as microservices
require
• Chaos Monkey – Resilience importance is more relevant
because of the number of components involved in a
flow/transaction
• Eventual consistency – CAP is usually balanced towards AP,
availability and partition tolerance are more important than
immediate consistency
• Immutable deployments – new containers are created that
package the new version, traffic is progressively directed to
this newly created cluster. Rollback is trivial
• Service discovery – configuration is difficult, many
integration configuration points difficult to operate manually

More Related Content

PDF
[WSO2Con EU 2017] Jump to the Next Curve with DevOps
PPTX
Making WCF Simple
PPTX
Messaging: Zero Downtime Communications
PDF
Developing Enterprise Applications for the Cloud, from Monolith to Microservice
PPTX
Pub/Sub Messaging
PPTX
Microservices
PDF
P2P streaming with HTML5
PPTX
SOA Pattern-Asynchronous Queuing
[WSO2Con EU 2017] Jump to the Next Curve with DevOps
Making WCF Simple
Messaging: Zero Downtime Communications
Developing Enterprise Applications for the Cloud, from Monolith to Microservice
Pub/Sub Messaging
Microservices
P2P streaming with HTML5
SOA Pattern-Asynchronous Queuing

What's hot (19)

PDF
SOA Pattern : Legacy Wrappers
PPTX
Microservice vs. Monolithic Architecture
PPTX
NServiceBus introduction
PDF
Digital Transformation through Open Software Defined Infrastructure
PDF
Microservice Memoirs - Lachlan Evanson
PPTX
Rest component demo
PDF
PDF
Xelemax Data Sheet_2015
PDF
ACE - Comcore
PDF
Microservice Architecture 101
PDF
Cn application layer_paradigms
PDF
Nexus 1000_ver 1.1
PDF
State of the OpenDaylight Union
PDF
Server And Hardware Virtualization_Aakash1.1
PDF
WSO2 Message Broker - Product Overview
PDF
Indrek Saar: "Mobile Application Server-Side Security Peculiarities"
PDF
The Interoperability Challenge in Telecom and NFS Environments
DOCX
DOTNET 2013 IEEE CLOUDCOMPUTING PROJECT An adaptive cloud downloading service
PDF
SOA Pattern : Policy Centralization
SOA Pattern : Legacy Wrappers
Microservice vs. Monolithic Architecture
NServiceBus introduction
Digital Transformation through Open Software Defined Infrastructure
Microservice Memoirs - Lachlan Evanson
Rest component demo
Xelemax Data Sheet_2015
ACE - Comcore
Microservice Architecture 101
Cn application layer_paradigms
Nexus 1000_ver 1.1
State of the OpenDaylight Union
Server And Hardware Virtualization_Aakash1.1
WSO2 Message Broker - Product Overview
Indrek Saar: "Mobile Application Server-Side Security Peculiarities"
The Interoperability Challenge in Telecom and NFS Environments
DOTNET 2013 IEEE CLOUDCOMPUTING PROJECT An adaptive cloud downloading service
SOA Pattern : Policy Centralization
Ad

Viewers also liked (6)

PDF
20140403 pecha kucha 10 tips agile development
PDF
Demystifying devops
KEY
Defluffing Cloud Computing
PPTX
Demistifying open stack storage
PPTX
Microsoft dynamics ax 2012 development introduction part 1/3
PPTX
DevOps and Continuous Delivery Reference Architectures (including Nexus and o...
20140403 pecha kucha 10 tips agile development
Demystifying devops
Defluffing Cloud Computing
Demistifying open stack storage
Microsoft dynamics ax 2012 development introduction part 1/3
DevOps and Continuous Delivery Reference Architectures (including Nexus and o...
Ad

Similar to Microservices tech talk (20)

PDF
Microservices for Mortals
PDF
Microservices for Mortals by Bert Ertman at Codemotion Dubai
PPTX
The 7 deadly sins of micro services
PDF
Microservices Architecture
PDF
Intro to Microservices
PDF
A Gentle introduction to microservices
ODP
Monolithic to Microservices Architecture - STM 6
PDF
Surviving microservices
PPTX
building microservices
PDF
Building microservices on azure
PDF
Microservices for architects los angeles-2016-07-16
PDF
#ATAGTR2020 Presentation - Microservices – Explored
PDF
Microservices for Application Modernisation
PDF
Microservices for java architects it-symposium-2015-09-15
PPTX
Yuriy Chapran - Building microservices.
PPTX
Grokking microservices in 5 minutes
PPTX
2 years into drinking the Microservice kool-aid (Fact and Fiction)
PPTX
Microservices: Why and When? - Alon Fliess, CodeValue - Cloud Native Day Tel ...
PDF
MicroService...Don't repeat SOA
PPTX
Microservice intro
Microservices for Mortals
Microservices for Mortals by Bert Ertman at Codemotion Dubai
The 7 deadly sins of micro services
Microservices Architecture
Intro to Microservices
A Gentle introduction to microservices
Monolithic to Microservices Architecture - STM 6
Surviving microservices
building microservices
Building microservices on azure
Microservices for architects los angeles-2016-07-16
#ATAGTR2020 Presentation - Microservices – Explored
Microservices for Application Modernisation
Microservices for java architects it-symposium-2015-09-15
Yuriy Chapran - Building microservices.
Grokking microservices in 5 minutes
2 years into drinking the Microservice kool-aid (Fact and Fiction)
Microservices: Why and When? - Alon Fliess, CodeValue - Cloud Native Day Tel ...
MicroService...Don't repeat SOA
Microservice intro

Recently uploaded (20)

PDF
top salesforce developer skills in 2025.pdf
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PPTX
Introduction to Artificial Intelligence
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
How Creative Agencies Leverage Project Management Software.pdf
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PPTX
Transform Your Business with a Software ERP System
PPTX
history of c programming in notes for students .pptx
top salesforce developer skills in 2025.pdf
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Introduction to Artificial Intelligence
CHAPTER 2 - PM Management and IT Context
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
Odoo Companies in India – Driving Business Transformation.pdf
Softaken Excel to vCard Converter Software.pdf
Design an Analysis of Algorithms I-SECS-1021-03
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
How Creative Agencies Leverage Project Management Software.pdf
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Upgrade and Innovation Strategies for SAP ERP Customers
Which alternative to Crystal Reports is best for small or large businesses.pdf
2025 Textile ERP Trends: SAP, Odoo & Oracle
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Transform Your Business with a Software ERP System
history of c programming in notes for students .pptx

Microservices tech talk

  • 2. Definition of Microservices • SOA without the vendors • + Lessons learned after 10+ years: – REST >> SOAP – Simplicity – Higher granularity -> Micro
  • 3. SOA Principles – Still valid • High decoupling: – Service has its own lifecycle • Allows releasing often with fewer changes with lower risk • Rolling upgrades • Canaries – Isolation • Communication through well defined interfaces, usually remote • Share nothing, service owns its persistence schema – Stateless • Clients maintain state for the flow
  • 4. SOA Principles - Lessons Learned • SOAP model is too rigid, REST is extensible • Clients everywhere: HTML, devices, M2M, IoT • Backwards compatibility is a must, usually we do not own clients • Design the interface upfront, aim for consensus with client developers if feasible • Refactor or rebuild the service, the smaller the service the cheaper to refactor/rebuild. Just keep the interfaces untouched
  • 5. SOA Principles - Lessons Learned II • Resource versioning when backwards compatibility is not possible, adds lots of complexity, code forking • HTTP as standard: Load Balancers, Proxies, Firewalls. Still more communication mechanisms are required, mostly intra-dc: Kafka, RabbitMQ, Akka cluster, etc • Remote interfaces promote better isolation than local interfaces. • Enhances team autonomy, easier to experiment new technologies in smaller services that can be rewritten if necessary. REST interfaces are quite agnostic of implementation technology • Strong Functional and Regression Testing – more exposed interfaces mean that more effort is required to assess the services data and behavior is correct • Integration tests are costly – lots of integration points to test, system is complex so having a working integration environment is difficult and costly.
  • 6. Micro, nano or pico?? • Service granularity depends on several factors: – Organizational: Conway’s Law – Latency: The more granular, the more latency we add, more so in the high percentiles – Release policy – Integration testing
  • 7. Risks and caveats • Services too small: – Risk of becoming orphaned, no team maintaining it – Chattiness, client needs to talk to multiple services for a given functionality • Too coarse: – more changes in each release – More difficult to refactor • Backwards compatibility is expensive • Somewhat chaotic systems and organization, difficult to have the whole picture, less standarized and more distributed • Complex systems design as everything is distributed • Complex debugging as a transaction usually flows through several services
  • 8. Related Topics • Continuous Delivery – Microservices are deployed often, CD is almost a requirement to deploy as often as microservices require • Chaos Monkey – Resilience importance is more relevant because of the number of components involved in a flow/transaction • Eventual consistency – CAP is usually balanced towards AP, availability and partition tolerance are more important than immediate consistency • Immutable deployments – new containers are created that package the new version, traffic is progressively directed to this newly created cluster. Rollback is trivial • Service discovery – configuration is difficult, many integration configuration points difficult to operate manually