SlideShare une entreprise Scribd logo
1  sur  143
Télécharger pour lire hors ligne
The Technical Journey
to Microservices
@russmiles
Biker me… TBD
Reactive…
Say “Microservices” one more time…
TBD
A Definition…
The kingdom of heaven is like a mustard seed, which
a man took and planted in his field.Though it is the
smallest of all seeds, yet when it grows, it is the largest
of garden plants and becomes a tree, so that the birds
come and perch in its branches (Matthew 13:31-32).
- Of Mustard Seeds and Microservices (Micah
Blalock) -- https://www.credera.com/blog/technology-
insights/java/mustard-seeds-microservices/
“Loosely coupled service oriented
architecture with bounded contexts”
Loosely Coupled
Services that 

can change
A Story
“The Elephant in the
Standup”
The term isWRONG
Size 

doesn’t matter
SLOC doesn’t matter
Cognitive Overhead
DOES
What can your System
DO?
Single Biggest Limiting
Factor on Change?
You.
Comprehension
Not the things…
… the things that
happen
Systemic Properties
Not what you have
What you can 

do
with it
The Big Challenge
Some value Stability
Some value Speed
Some value Agility
Some value Adaptability
Some value Volatility
Some value Antifragility
Microservices (can) =
Speed
Adaptability
Antifragility
How?
How?
Life Preservation
Events.
How?
How?
Volume
Variety
Velocity
Volume
Variety
Velocity
Veracity
Aggregates
Views
Downside?
One more story…
Build an app…
The Todo list, 

for a Todo App
“Create a beautiful
looking app & web ui
for interacting with
todo lists”
“Write a back-end
service that stores todo
lists so that they can be
made available across
devices and the web.”
“Write your todo-list
tests to ensure things
function as you expect"
But…
According to slide-
theorists…
But that’s waaaay 

too easy…
40 slides in 2 minutes…
Ready…?
Set up source code
control and an issue
tracker
Manage user accounts,
sign-up, sign-in, and
password management
Collect analytics from
your app and web ui
about how people use
your app
Build and test your app
across multiple devices
and OS versions
Gather information on
app crashes and bugs
and feed this back into
an issue backlog
Test your web ui across
multiple browsers and
versions
Document the API that
the native apps and web
app depend on
Push client-side assets to
CDNs and keep them up
to date
Version your API so that
you can evolve client
apps and the backing
service independently
Implement rate limiting
for requests
Set up a CI service that
monitors your repository
for changes builds and
tests your software
Set up a CD service that
deploys new version of
your software to your
chosen deployment
platform
Set up networking rules
so that the components
of your backend can see
each other and are
protected from other
traffic
Enable the components
of your backend service
(e.g. the API
implementation and
database) to find each
other
Ensure the service can
survive failure of an AZ
Monitor request latency
Create new instances if
existing ones fail, and
transparently reconnect
service components
Provide mechanisms to
scale up and down
service capacity
Trace requests all the way
through the system
Provide audit logs of all
changes made to
production systems
Set up an alerting
mechanism for problems
in production
Put in place a DR
solution and test it
Back up and recovery
processes for data
Create operational play
books and test your plays
Put in place automated
failure testing 

(e.g. simians)
Ensure service has no
security weaknesses 

(e.g. XSS)
Monitor CVE reports for
all components in your
stack and replace as
soon as a vulnerability is
found
Devise deployment
schemes for e.g. blue/
green, phased rollout, and
rollback
Collect logs from all
components for analysis
Enable marketing to run
A/B and feature tests
Monitor and visualise all
of the above and ensure
that things continue to
flow smoothly through the
pipeline
Package all of your
application components
in a form suitable for
deployment
Manage stand up and
tear down of dev and test
environments
…
…breathe…
…
And that’s before we get
to…
Service Configuration
Service Discovery
Bulkheads
Circuit Breakers
Event Stores
Messaging
CQRS
Language Selection
APIs
API Gateways
Lakes
Routing
Security
…
BREATHE!!!
…
And this is JUST the
Technical Journey!
WT*?!
The real problem?
The general problem…
d
do
bdo
S
Complexity

of

Microservices
We can do better
We can do much better
We have done this
before…
Simplify Enterprise Java
Simplify Microservices
What can you do?
www.leanpub.com/antifragilesoftware
Get Involved!
Thanks for your time!
@russmiles
russmiles.com

Contenu connexe

Plus de Russell Miles

Don't be a victim of your own success: Using Service Levels to give a Consist...
Don't be a victim of your own success: Using Service Levels to give a Consist...Don't be a victim of your own success: Using Service Levels to give a Consist...
Don't be a victim of your own success: Using Service Levels to give a Consist...Russell Miles
 
Service Level Objectives and SRE: Service Level Overkill with Mick Roper
Service Level Objectives and SRE: Service Level Overkill with Mick RoperService Level Objectives and SRE: Service Level Overkill with Mick Roper
Service Level Objectives and SRE: Service Level Overkill with Mick RoperRussell Miles
 
From Chaos to Verification at Expedia Group, London
From Chaos to Verification at Expedia Group, LondonFrom Chaos to Verification at Expedia Group, London
From Chaos to Verification at Expedia Group, LondonRussell Miles
 
Break stuff - Confessions of a misguided chaos engineer
Break stuff - Confessions of a misguided chaos engineerBreak stuff - Confessions of a misguided chaos engineer
Break stuff - Confessions of a misguided chaos engineerRussell Miles
 
Trust and Confidence through Chaos Keynote for W-JAX Munich 2018
Trust and Confidence through Chaos Keynote for W-JAX Munich 2018Trust and Confidence through Chaos Keynote for W-JAX Munich 2018
Trust and Confidence through Chaos Keynote for W-JAX Munich 2018Russell Miles
 
How to be Wrong (or How to be Successful at Being Wrong)
How to be Wrong (or How to be Successful at Being Wrong)How to be Wrong (or How to be Successful at Being Wrong)
How to be Wrong (or How to be Successful at Being Wrong)Russell Miles
 
Production Microservices @ Jazoon
Production Microservices @ JazoonProduction Microservices @ Jazoon
Production Microservices @ JazoonRussell Miles
 
Chaos Engineering 101 by Russ Miles
Chaos Engineering 101 by Russ MilesChaos Engineering 101 by Russ Miles
Chaos Engineering 101 by Russ MilesRussell Miles
 

Plus de Russell Miles (8)

Don't be a victim of your own success: Using Service Levels to give a Consist...
Don't be a victim of your own success: Using Service Levels to give a Consist...Don't be a victim of your own success: Using Service Levels to give a Consist...
Don't be a victim of your own success: Using Service Levels to give a Consist...
 
Service Level Objectives and SRE: Service Level Overkill with Mick Roper
Service Level Objectives and SRE: Service Level Overkill with Mick RoperService Level Objectives and SRE: Service Level Overkill with Mick Roper
Service Level Objectives and SRE: Service Level Overkill with Mick Roper
 
From Chaos to Verification at Expedia Group, London
From Chaos to Verification at Expedia Group, LondonFrom Chaos to Verification at Expedia Group, London
From Chaos to Verification at Expedia Group, London
 
Break stuff - Confessions of a misguided chaos engineer
Break stuff - Confessions of a misguided chaos engineerBreak stuff - Confessions of a misguided chaos engineer
Break stuff - Confessions of a misguided chaos engineer
 
Trust and Confidence through Chaos Keynote for W-JAX Munich 2018
Trust and Confidence through Chaos Keynote for W-JAX Munich 2018Trust and Confidence through Chaos Keynote for W-JAX Munich 2018
Trust and Confidence through Chaos Keynote for W-JAX Munich 2018
 
How to be Wrong (or How to be Successful at Being Wrong)
How to be Wrong (or How to be Successful at Being Wrong)How to be Wrong (or How to be Successful at Being Wrong)
How to be Wrong (or How to be Successful at Being Wrong)
 
Production Microservices @ Jazoon
Production Microservices @ JazoonProduction Microservices @ Jazoon
Production Microservices @ Jazoon
 
Chaos Engineering 101 by Russ Miles
Chaos Engineering 101 by Russ MilesChaos Engineering 101 by Russ Miles
Chaos Engineering 101 by Russ Miles
 

Dernier

Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Principled Technologies
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 

Dernier (20)

Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 

The Technical Journey to Microservices - the New World