SlideShare a Scribd company logo
1 of 33
Download to read offline
Merging 
microservices 
architecture 
with 
SOA 
prac9ces 
Chris 
Haddad 
VP 
Pla&orm 
Evangelism 
15 
September 
2014
2 
About 
the 
Presenter 
• Chris Haddad 
๏ VP 
Pla?orm 
Evangelism 
๏ F500/G2000 
Advisor 
๏ Cloudy 
DevOps 
for 
Dev 
guy 
๏ API 
Strategy 
and 
SOA 
Roadmap 
consultant 
๏ Former 
Gartner 
research 
team 
leader 
Architect 
๏ SaaS 
and 
PaaS 
๏ Service 
por?olio 
and 
infrastructure 
๏ Data 
management 
๏ Java, 
.NET, 
JavaScript, 
Open 
Source 
Learn more about me 
• Follow me @cobiacomm on Twitter 
• Blog: http://blog.cobia.net/cobiacomm 
• Decks: http://www.slideshare.net/cobiacomm/ 
• Profle: http://www.linkedin.com/in/cobiacomm/ 
• On Google+ too
Agenda 
• Service 
Success 
and 
Service 
Angst 
• Are 
microservices 
the 
answer? 
• Microservice 
Mindset 
• How 
to 
properly 
define, 
decouple, 
and 
size 
a 
microservice. 
• What 
DevOps 
prac9ces 
overcome 
microservice 
deployment 
roadblocks 
• When 
microservices 
create 
fragile 
instead 
of 
an9fragile 
building 
blocks 
3
Service 
Success 
– 
Extend 
Legacy 
Reach 
4
Service 
Success 
– 
Extend 
Business 
Reach
Service 
Success 
– 
Useful 
Service 
Blocks 
6 
Customer 
Account 
Inventory 
Product 
Payment 
Order 
Invoice 
Fulfillment
Service 
Success 
– 
Agility 
at 
Scale 
๏ How 
do 
you 
measure 
agility? 
๏ Have 
services 
increased 
your 
agility? 
๏ Does 
IT 
service 
agility 
exist? 
http://blog.cobia.net/cobiacomm/2013/03/19/accelerating-business-agility-with-app-factory-devops-paas/
Common 
Service 
Angst
Do 
SOA 
An9-­‐Pa_erns 
Prevail? 
Symptoms 
๏ Isola9on, 
Uniqueness, 
Duplica9on 
๏ Tight 
Coupling 
and 
Build 
Again 
Cause 
๏ Lack 
of 
Trust 
-­‐ 
Not 
Invented 
Here 
[NIH] 
๏ Shared 
Service 
Invisibility 
๏ Teams 
do 
not 
know 
about 
a 
service 
๏ Non-­‐func9onal 
and 
func9onal 
requirements 
are 
not 
well 
documented 
9
Tired 
of 
Big 
SOA? 
๏ Set 
up 
a 
cross-­‐func9onal 
SOA 
Working 
Group 
๏ Develop 
a 
SOA 
Adop9on 
Plan 
๏ Define 
Target 
Service 
Por?olio 
๏ Develop 
a 
Business 
Case 
๏ Plan 
and 
Fund 
Development 
of 
SOA 
Infrastructure 
๏ Establish 
New 
Roles 
๏ Plan 
Training 
and 
Mentoring 
for 
Staff 
๏ Develop 
Corporate 
Policies, 
Guidelines, 
and 
Best 
Prac9ces 
๏ Ins9tute 
SOA 
Governance 
Processes 
๏ Establish 
New 
Incen9ves 
that 
Reward 
Good 
Behavior 
๏ Iden9fy 
Candidate 
Projects 
๏ Establish 
Priori9es 
๏ Reassess 
Your 
Sogware 
Development 
LifeCycle 
(SDLC) 
10
Can 
we 
MicroSize 
SOA? 
11
Be 
Like 
Mike! 
– 
aka 
NetFlix 
12
Microservices 
to 
the 
Rescue 
Microservices 
Defined 
๏ A 
small 
problem 
domain 
๏ Built 
and 
deployed 
by 
itself 
๏ Runs 
in 
its 
own 
process 
๏ Integrates 
via 
well-­‐known 
interfaces 
๏ Owns 
its 
own 
data 
storage 
13 
Source: http://www.brunton-spall.co.uk/post/2014/05/21/what-is-a-microservice-and-why-does-it-matter/
Microservices 
to 
the 
Rescue 
“designing 
so<ware 
applica?ons 
as 
suites 
of 
independently 
deployable 
services.” 
Common 
Characteris9cs 
๏ organiza9on 
around 
business 
capability 
๏ automated 
deployment 
๏ intelligence 
in 
the 
endpoints 
๏ decentralized 
control 
of 
languages 
and 
data 
Source: 
Mar9n 
Fowler 
h_p://mar9nfowler.com/ar9cles/microservices.html 
14
Microservices 
Scope 
๏ Coarse 
Grained, 
Atomic, 
Business 
Capability 
๏ Example 
๏ Customer 
Profile 
๏ Product 
Catalogue 
๏ Shopping 
Cart 
๏ Account 
Ac9vity 
๏ Ra9ngs 
๏ Recommenda9ons 
/ 
Reviews 
15
SOA 
== 
Microservices 
๏ Services 
expose 
a 
business 
capability 
๏ Factor 
applica9ons 
into 
composable 
services 
๏ Re-­‐use 
service 
building 
blocks 
๏ DRY 
(Don’t 
Repeat 
Yourself) 
๏ Shared 
service 
delivery 
๏ “Microservices 
is 
SOA, 
for 
those 
who 
know 
what 
SOA 
is” 
Source: 
Steve 
Jones 
16
SOA 
!= 
Microservices 
SOA 
๏ Services 
Deployed 
in 
a 
Shared 
Bus 
๏ One 
Team 
Goal 
๏ Centralize 
Media9on 
๏ Not 
prescrip9ve 
on 
the 
back-­‐end 
implementa9on 
pa_ern 
17 
Micro-­‐services 
๏ Services 
Deployed 
at 
the 
Edge 
๏ Teams 
aligned 
with 
Business 
Units 
๏ Dumb 
Infrastructure 
๏ Prescribes 
back-­‐end 
implementa9on 
pa_ern 
“SOA is a lame enterprise approach, whereas microservices are a cool hacker approach.” 
Source: Ycombinator
Microservice 
Roadblocks 
๏ How 
big 
is 
a 
micro-­‐service? 
(UX-­‐first 
approach, 
data 
domain 
approach) 
๏ How 
decoupled 
is 
a 
micro-­‐service? 
(Dependencies, 
versioning, 
rou9ng, 
linking 
data) 
๏ How 
to 
micro-­‐size 
a 
business 
capability 
(granularity, 
user 
experience 
composi9on) 
๏ How 
to 
take 
a 
RESTful 
approach 
towards 
managing 
micro-­‐service 
dependencies 
(DNS, 
/etcd, 
load 
balancing) 
18
Microservice 
Myths 
and 
Legends 
๏ The 
NetFlix 
Legend 
– 
QoS 
and 
rapid 
delivery 
๏ Micro-­‐services 
Foster 
Rapid 
Evolu9on 
๏ Agility, 
Crea9ve 
Experimenta9on, 
and 
Dynamic 
Composi9on 
๏ Silos 
are 
good 
(if 
Micro-­‐serviced) 
๏ Containeriza9on 
Panacea 
๏ Lifecycle 
Complexity 
is 
Overblown 
๏ Micro-­‐services 
don’t 
require 
SOA 
principles 
to 
succeed 
19
Agenda 
• How 
to 
properly 
define, 
decouple, 
and 
size 
a 
microservice. 
• What 
DevOps 
prac9ces 
overcome 
microservice 
deployment 
roadblocks 
• When 
microservices 
create 
fragile 
instead 
of 
an9fragile 
building 
blocks 
20
DevOps 
Prac9ces 
Microservices 
Pre-­‐requisites 
๏ Business 
Domain 
Responsibility 
Decomposi9on 
๏ User 
Interface 
Integra9on 
๏ Communica9on 
Protocols 
๏ Data 
Formats 
๏ Redundant 
Data 
๏ Business 
Intelligence 
Interfaces 
๏ Root 
Cause 
Analysis 
(Logging, 
Monitoring) 
๏ High 
Availability 
and 
Fault 
Tolerance 
๏ Dynamic 
Service 
Management 
Adapted 
From: 
Stefan 
Tilkov 
h_p://www.infoq.com/presenta9ons/Breaking-­‐the-­‐Monolith 
21
DevOpS 
Pa_erns 
Loosely 
couple 
๏ Bounded 
Context 
๏ Tolerant 
Reader 
๏ Consumer 
driven 
Contracts 
๏ Ubiquitous 
Language 
22 
Source: Martin Folwer http://martinfowler.com/articles/microservices.html#MicroservicesAndSoa
DevOpS 
Pa_erns 
Loosely 
couple 
๏ Bounded 
Context 
๏ Tolerant 
Reader 
๏ Consumer 
driven 
Contracts 
๏ Ubiquitous 
Language 
๏ Silos 
per 
business 
capability 
๏ Separate 
database 
per 
product 
23 
Source: Martin Folwer http://martinfowler.com/articles/microservices.html#MicroservicesAndSoa
Agenda 
• How 
to 
properly 
define, 
decouple, 
and 
size 
a 
microservice. 
• What 
DevOps 
prac9ces 
overcome 
microservice 
deployment 
roadblocks 
• When 
microservices 
create 
fragile 
instead 
of 
an9fragile 
building 
blocks 
24
Fragility 
and 
An9-­‐Fragility 
“An9-­‐fragility 
does 
not 
merely 
withstand 
a 
shock 
but 
actually 
improves 
because 
of 
it.” 
๏ Redundancy 
๏ Clustering, 
Service 
Farms 
๏ Failover 
๏ Watchdog 
monitors 
, 
Circuit 
breakers 
25
Fragility 
and 
An9-­‐Fragility 
“An9-­‐fragility 
does 
not 
merely 
withstand 
a 
shock 
but 
actually 
improves 
because 
of 
it.” 
Achieve 
High 
Availability 
in 
Distributed 
Systems 
through: 
๏ Redundancy 
๏ Failover 
Tradi9onal 
Service 
way 
๏ 
Dedicated 
ac9ve-­‐ac9ve, 
ac9ve-­‐passive 
instances 
Micro-­‐services 
way 
๏ 
Dynamic 
instance 
provisioning, 
graceful 
degrada9on 
26
Fragility 
and 
An9-­‐Fragility 
๏ Redundancy 
Strategies 
๏ Clustering 
– 
maintain 
session 
state 
๏ Service 
Farms 
– 
iden9cal 
ac9ve 
nodes 
๏ Infrastructure 
๏ Load 
Balancers 
– 
route 
to 
available 
nodes 
๏ Elas9c 
service 
provisioning 
– 
spin 
up/down 
based 
on 
load 
and 
availability 
27
Fragility 
and 
An9-­‐Fragility 
๏ Failover 
Strategies 
๏ Load 
Balancers 
– 
route 
to 
available 
nodes 
๏ Watchdog 
Health 
Monitors 
-­‐ 
iden9fy 
break 
points 
๏ Circuit 
breakers 
[h_ps://github.com/Ne?lix/Hystrix 
] 
๏ Infrastructure 
๏ Intelligent 
Content 
Rou9ng 
๏ Topics 
/ 
Queues 
๏ Management 
Scripts 
– 
restart 
service 
instances 
๏ PaaS 
Service 
Management 
28
Start 
Small 
๏ Implement 
SOA 
principles 
on 
a 
project-­‐by-­‐project 
basis 
๏ Iden9fy 
rela9onship 
between 
services 
and 
business 
capabili9es 
๏ Build 
a 
top-­‐down 
and 
bo_oms-­‐up 
data 
model 
๏ Work 
with 
your 
Enterprise 
Architecture 
Team 
29
SOA 
& 
Microservices 
Reconcilia9on 
๏ When 
to 
create 
services 
๏ Create 
a 
service 
when 
sharing 
a 
business 
capability 
๏ When 
to 
create 
APIs 
๏ Sharing 
a 
service 
outside 
a 
domain 
of 
control 
๏ Targe9ng 
the 
widest 
possible 
reach 
and 
consump9on 
๏ Offering 
the 
service 
across 
na9ve 
web 
infrastructure 
๏ Maximizing 
asymmetric 
evolu9on 
between 
service 
clients, 
interface, 
and 
implementa9on. 
๏ When 
to 
create 
and 
use 
microservices 
๏ Building 
an 
applica9on 
crossing 
domains 
๏ Ra9onalizing 
and 
consolida9ng 
your 
SOA 
por?olio 
30
31 
Accelerate 
Your 
IT 
Business 
Strategy 
with 
WSO2 
Services
References 
๏ SOA 
and 
API 
Convergence 
Strategy 
and 
Tac7cs 
๏ Promo7ng 
service 
reuse 
within 
your 
enterprise 
and 
maximizing 
SOA 
success 
๏ REST 
Easy: 
API 
Design, 
Evolu7on, 
and 
Connec7on 
๏ Mar7n 
Fowler 
on 
Microservices 
๏ Stefan 
Tilkov, 
Breaking 
the 
Monolith 
๏ Brunton 
Sprall: 
What 
is 
a 
microservice 
and 
why 
does 
it 
maJer 
32
Contact 
us 
!

More Related Content

What's hot

Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecturetyrantbrian
 
Nats meetup sf 20150826
Nats meetup sf   20150826Nats meetup sf   20150826
Nats meetup sf 20150826Apcera
 
Microservices in Practice
Microservices in PracticeMicroservices in Practice
Microservices in PracticeKasun Indrasiri
 
Deep-dive into Microservice Outer Architecture
Deep-dive into Microservice Outer ArchitectureDeep-dive into Microservice Outer Architecture
Deep-dive into Microservice Outer ArchitectureWSO2
 
Microservices Technology Stack
Microservices Technology StackMicroservices Technology Stack
Microservices Technology StackEberhard Wolff
 
Introduction to microservices (from rails monolith)
Introduction to microservices (from rails monolith)Introduction to microservices (from rails monolith)
Introduction to microservices (from rails monolith)Leandro Parazito
 
Integration Microservices
Integration MicroservicesIntegration Microservices
Integration MicroservicesKasun Indrasiri
 
An introduction to Microservices
An introduction to MicroservicesAn introduction to Microservices
An introduction to MicroservicesCisco DevNet
 
Microservices in the Enterprise: A Research Study and Reference Architecture
Microservices in the Enterprise: A Research Study and Reference ArchitectureMicroservices in the Enterprise: A Research Study and Reference Architecture
Microservices in the Enterprise: A Research Study and Reference ArchitectureJesus Rodriguez
 
DEVNET-1184 Microservices Patterns
DEVNET-1184	Microservices PatternsDEVNET-1184	Microservices Patterns
DEVNET-1184 Microservices PatternsCisco DevNet
 
Introduction To Microservices
Introduction To MicroservicesIntroduction To Microservices
Introduction To MicroservicesLalit Kale
 
Microservices architecture
Microservices architectureMicroservices architecture
Microservices architectureAbdelghani Azri
 
Introduction to microservices Jornada Microservices
Introduction to microservices Jornada MicroservicesIntroduction to microservices Jornada Microservices
Introduction to microservices Jornada MicroservicesRoan Brasil Monteiro
 

What's hot (20)

Architecture: Microservices
Architecture: MicroservicesArchitecture: Microservices
Architecture: Microservices
 
From SOA to MSA
From SOA to MSAFrom SOA to MSA
From SOA to MSA
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
 
Nats meetup sf 20150826
Nats meetup sf   20150826Nats meetup sf   20150826
Nats meetup sf 20150826
 
Microservices in Practice
Microservices in PracticeMicroservices in Practice
Microservices in Practice
 
Microservice architecture-api-gateway-considerations
Microservice architecture-api-gateway-considerationsMicroservice architecture-api-gateway-considerations
Microservice architecture-api-gateway-considerations
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Deep-dive into Microservice Outer Architecture
Deep-dive into Microservice Outer ArchitectureDeep-dive into Microservice Outer Architecture
Deep-dive into Microservice Outer Architecture
 
Microservice architecture
Microservice architectureMicroservice architecture
Microservice architecture
 
Microservices Technology Stack
Microservices Technology StackMicroservices Technology Stack
Microservices Technology Stack
 
Introduction to microservices (from rails monolith)
Introduction to microservices (from rails monolith)Introduction to microservices (from rails monolith)
Introduction to microservices (from rails monolith)
 
Integration Microservices
Integration MicroservicesIntegration Microservices
Integration Microservices
 
Microservices
MicroservicesMicroservices
Microservices
 
A lifecycle for microservices
A lifecycle for microservicesA lifecycle for microservices
A lifecycle for microservices
 
An introduction to Microservices
An introduction to MicroservicesAn introduction to Microservices
An introduction to Microservices
 
Microservices in the Enterprise: A Research Study and Reference Architecture
Microservices in the Enterprise: A Research Study and Reference ArchitectureMicroservices in the Enterprise: A Research Study and Reference Architecture
Microservices in the Enterprise: A Research Study and Reference Architecture
 
DEVNET-1184 Microservices Patterns
DEVNET-1184	Microservices PatternsDEVNET-1184	Microservices Patterns
DEVNET-1184 Microservices Patterns
 
Introduction To Microservices
Introduction To MicroservicesIntroduction To Microservices
Introduction To Microservices
 
Microservices architecture
Microservices architectureMicroservices architecture
Microservices architecture
 
Introduction to microservices Jornada Microservices
Introduction to microservices Jornada MicroservicesIntroduction to microservices Jornada Microservices
Introduction to microservices Jornada Microservices
 

Similar to Merging Microservices Architecture with SOA Practices

SOA and API Convergence
SOA and API Convergence SOA and API Convergence
SOA and API Convergence WSO2
 
SOA and API Convergence Strategy and Tactics
SOA and API Convergence Strategy and TacticsSOA and API Convergence Strategy and Tactics
SOA and API Convergence Strategy and TacticsChris Haddad
 
From Monoliths to Services: Paying Your Technical Debt
From Monoliths to Services: Paying Your Technical DebtFrom Monoliths to Services: Paying Your Technical Debt
From Monoliths to Services: Paying Your Technical DebtTechWell
 
Best Practices Building Cloud Scale Apps with Microservices
Best Practices Building Cloud Scale Apps with MicroservicesBest Practices Building Cloud Scale Apps with Microservices
Best Practices Building Cloud Scale Apps with MicroservicesJim (张建军) Zhang
 
Micro Front-End & Microservices - Plansoft
Micro Front-End & Microservices - PlansoftMicro Front-End & Microservices - Plansoft
Micro Front-End & Microservices - PlansoftMiki Lombardi
 
Cloud Innovation Tour - Discover Track
Cloud Innovation Tour - Discover TrackCloud Innovation Tour - Discover Track
Cloud Innovation Tour - Discover TrackLaurenWendler
 
InterConnect 2015 session 2825 cics_and_the_new soa
InterConnect 2015 session 2825  cics_and_the_new soaInterConnect 2015 session 2825  cics_and_the_new soa
InterConnect 2015 session 2825 cics_and_the_new soanick_garrod
 
Diving Into Docker
Diving Into Docker Diving Into Docker
Diving Into Docker XebiaLabs
 
Transformação Digital – Onde se encontra a Indústria.
Transformação Digital – Onde se encontra a Indústria.Transformação Digital – Onde se encontra a Indústria.
Transformação Digital – Onde se encontra a Indústria.Joao Galdino Mello de Souza
 
NZ Post - Mulesoft Summit presentation
NZ Post - Mulesoft Summit presentationNZ Post - Mulesoft Summit presentation
NZ Post - Mulesoft Summit presentationMichael Brosnahan
 
Reshaping Enterprise Architecture
Reshaping Enterprise Architecture Reshaping Enterprise Architecture
Reshaping Enterprise Architecture WSO2
 
Cloud native fundamentals
Cloud native fundamentalsCloud native fundamentals
Cloud native fundamentalsVictor Morales
 
stackconf 2021 | Platform as a Product
stackconf 2021 | Platform as a Productstackconf 2021 | Platform as a Product
stackconf 2021 | Platform as a ProductNETWAYS
 
Journey to the cloud in banking and finance webinar
Journey to the cloud in banking and finance webinarJourney to the cloud in banking and finance webinar
Journey to the cloud in banking and finance webinarcontinohq
 
#dbhouseparty - Should I be building Microservices?
#dbhouseparty - Should I be building Microservices?#dbhouseparty - Should I be building Microservices?
#dbhouseparty - Should I be building Microservices?Tammy Bednar
 
State of DevOps - Build the Thing Right
State of DevOps - Build the Thing RightState of DevOps - Build the Thing Right
State of DevOps - Build the Thing RightSergiu Bodiu
 
The Reality of Managing Microservices in Your CD Pipeline
The Reality of Managing Microservices in Your CD PipelineThe Reality of Managing Microservices in Your CD Pipeline
The Reality of Managing Microservices in Your CD PipelineDevOps.com
 
Discovering Microservices
Discovering MicroservicesDiscovering Microservices
Discovering MicroservicesMichae Blakeney
 

Similar to Merging Microservices Architecture with SOA Practices (20)

SOA and API Convergence
SOA and API Convergence SOA and API Convergence
SOA and API Convergence
 
SOA and API Convergence Strategy and Tactics
SOA and API Convergence Strategy and TacticsSOA and API Convergence Strategy and Tactics
SOA and API Convergence Strategy and Tactics
 
Cloud Native In-Depth
Cloud Native In-DepthCloud Native In-Depth
Cloud Native In-Depth
 
From Monoliths to Services: Paying Your Technical Debt
From Monoliths to Services: Paying Your Technical DebtFrom Monoliths to Services: Paying Your Technical Debt
From Monoliths to Services: Paying Your Technical Debt
 
Best Practices Building Cloud Scale Apps with Microservices
Best Practices Building Cloud Scale Apps with MicroservicesBest Practices Building Cloud Scale Apps with Microservices
Best Practices Building Cloud Scale Apps with Microservices
 
Micro Front-End & Microservices - Plansoft
Micro Front-End & Microservices - PlansoftMicro Front-End & Microservices - Plansoft
Micro Front-End & Microservices - Plansoft
 
Cloud Innovation Tour - Discover Track
Cloud Innovation Tour - Discover TrackCloud Innovation Tour - Discover Track
Cloud Innovation Tour - Discover Track
 
InterConnect 2015 session 2825 cics_and_the_new soa
InterConnect 2015 session 2825  cics_and_the_new soaInterConnect 2015 session 2825  cics_and_the_new soa
InterConnect 2015 session 2825 cics_and_the_new soa
 
Diving Into Docker
Diving Into Docker Diving Into Docker
Diving Into Docker
 
Transformação Digital – Onde se encontra a Indústria.
Transformação Digital – Onde se encontra a Indústria.Transformação Digital – Onde se encontra a Indústria.
Transformação Digital – Onde se encontra a Indústria.
 
NZ Post - Mulesoft Summit presentation
NZ Post - Mulesoft Summit presentationNZ Post - Mulesoft Summit presentation
NZ Post - Mulesoft Summit presentation
 
Reshaping Enterprise Architecture
Reshaping Enterprise Architecture Reshaping Enterprise Architecture
Reshaping Enterprise Architecture
 
Cloud Foundry Foundation Overview
Cloud Foundry Foundation OverviewCloud Foundry Foundation Overview
Cloud Foundry Foundation Overview
 
Cloud native fundamentals
Cloud native fundamentalsCloud native fundamentals
Cloud native fundamentals
 
stackconf 2021 | Platform as a Product
stackconf 2021 | Platform as a Productstackconf 2021 | Platform as a Product
stackconf 2021 | Platform as a Product
 
Journey to the cloud in banking and finance webinar
Journey to the cloud in banking and finance webinarJourney to the cloud in banking and finance webinar
Journey to the cloud in banking and finance webinar
 
#dbhouseparty - Should I be building Microservices?
#dbhouseparty - Should I be building Microservices?#dbhouseparty - Should I be building Microservices?
#dbhouseparty - Should I be building Microservices?
 
State of DevOps - Build the Thing Right
State of DevOps - Build the Thing RightState of DevOps - Build the Thing Right
State of DevOps - Build the Thing Right
 
The Reality of Managing Microservices in Your CD Pipeline
The Reality of Managing Microservices in Your CD PipelineThe Reality of Managing Microservices in Your CD Pipeline
The Reality of Managing Microservices in Your CD Pipeline
 
Discovering Microservices
Discovering MicroservicesDiscovering Microservices
Discovering Microservices
 

More from WSO2

Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessWSO2
 
How to Create a Service in Choreo
How to Create a Service in ChoreoHow to Create a Service in Choreo
How to Create a Service in ChoreoWSO2
 
Ballerina Tech Talk - May 2023
Ballerina Tech Talk - May 2023Ballerina Tech Talk - May 2023
Ballerina Tech Talk - May 2023WSO2
 
Platform Strategy to Deliver Digital Experiences on Azure
Platform Strategy to Deliver Digital Experiences on AzurePlatform Strategy to Deliver Digital Experiences on Azure
Platform Strategy to Deliver Digital Experiences on AzureWSO2
 
GartnerITSymSessionSlides.pdf
GartnerITSymSessionSlides.pdfGartnerITSymSessionSlides.pdf
GartnerITSymSessionSlides.pdfWSO2
 
[Webinar] How to Create an API in Minutes
[Webinar] How to Create an API in Minutes[Webinar] How to Create an API in Minutes
[Webinar] How to Create an API in MinutesWSO2
 
Modernizing the Student Journey with Ethos Identity
Modernizing the Student Journey with Ethos IdentityModernizing the Student Journey with Ethos Identity
Modernizing the Student Journey with Ethos IdentityWSO2
 
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...WSO2
 
CIO Summit Berlin 2022.pptx.pdf
CIO Summit Berlin 2022.pptx.pdfCIO Summit Berlin 2022.pptx.pdf
CIO Summit Berlin 2022.pptx.pdfWSO2
 
Delivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing ChoreoDelivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing ChoreoWSO2
 
Fueling the Digital Experience Economy with Connected Products
Fueling the Digital Experience Economy with Connected ProductsFueling the Digital Experience Economy with Connected Products
Fueling the Digital Experience Economy with Connected ProductsWSO2
 
A Reference Methodology for Agile Digital Businesses
 A Reference Methodology for Agile Digital Businesses A Reference Methodology for Agile Digital Businesses
A Reference Methodology for Agile Digital BusinessesWSO2
 
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)WSO2
 
Lessons from the pandemic - From a single use case to true transformation
 Lessons from the pandemic - From a single use case to true transformation Lessons from the pandemic - From a single use case to true transformation
Lessons from the pandemic - From a single use case to true transformationWSO2
 
Adding Liveliness to Banking Experiences
Adding Liveliness to Banking ExperiencesAdding Liveliness to Banking Experiences
Adding Liveliness to Banking ExperiencesWSO2
 
Building a Future-ready Bank
Building a Future-ready BankBuilding a Future-ready Bank
Building a Future-ready BankWSO2
 
WSO2 API Manager Community Call - November 2021
WSO2 API Manager Community Call - November 2021WSO2 API Manager Community Call - November 2021
WSO2 API Manager Community Call - November 2021WSO2
 
[API World ] - Managing Asynchronous APIs
[API World ] - Managing Asynchronous APIs[API World ] - Managing Asynchronous APIs
[API World ] - Managing Asynchronous APIsWSO2
 
[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native Deployment[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native DeploymentWSO2
 
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”WSO2
 

More from WSO2 (20)

Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with Platformless
 
How to Create a Service in Choreo
How to Create a Service in ChoreoHow to Create a Service in Choreo
How to Create a Service in Choreo
 
Ballerina Tech Talk - May 2023
Ballerina Tech Talk - May 2023Ballerina Tech Talk - May 2023
Ballerina Tech Talk - May 2023
 
Platform Strategy to Deliver Digital Experiences on Azure
Platform Strategy to Deliver Digital Experiences on AzurePlatform Strategy to Deliver Digital Experiences on Azure
Platform Strategy to Deliver Digital Experiences on Azure
 
GartnerITSymSessionSlides.pdf
GartnerITSymSessionSlides.pdfGartnerITSymSessionSlides.pdf
GartnerITSymSessionSlides.pdf
 
[Webinar] How to Create an API in Minutes
[Webinar] How to Create an API in Minutes[Webinar] How to Create an API in Minutes
[Webinar] How to Create an API in Minutes
 
Modernizing the Student Journey with Ethos Identity
Modernizing the Student Journey with Ethos IdentityModernizing the Student Journey with Ethos Identity
Modernizing the Student Journey with Ethos Identity
 
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...
 
CIO Summit Berlin 2022.pptx.pdf
CIO Summit Berlin 2022.pptx.pdfCIO Summit Berlin 2022.pptx.pdf
CIO Summit Berlin 2022.pptx.pdf
 
Delivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing ChoreoDelivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing Choreo
 
Fueling the Digital Experience Economy with Connected Products
Fueling the Digital Experience Economy with Connected ProductsFueling the Digital Experience Economy with Connected Products
Fueling the Digital Experience Economy with Connected Products
 
A Reference Methodology for Agile Digital Businesses
 A Reference Methodology for Agile Digital Businesses A Reference Methodology for Agile Digital Businesses
A Reference Methodology for Agile Digital Businesses
 
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
 
Lessons from the pandemic - From a single use case to true transformation
 Lessons from the pandemic - From a single use case to true transformation Lessons from the pandemic - From a single use case to true transformation
Lessons from the pandemic - From a single use case to true transformation
 
Adding Liveliness to Banking Experiences
Adding Liveliness to Banking ExperiencesAdding Liveliness to Banking Experiences
Adding Liveliness to Banking Experiences
 
Building a Future-ready Bank
Building a Future-ready BankBuilding a Future-ready Bank
Building a Future-ready Bank
 
WSO2 API Manager Community Call - November 2021
WSO2 API Manager Community Call - November 2021WSO2 API Manager Community Call - November 2021
WSO2 API Manager Community Call - November 2021
 
[API World ] - Managing Asynchronous APIs
[API World ] - Managing Asynchronous APIs[API World ] - Managing Asynchronous APIs
[API World ] - Managing Asynchronous APIs
 
[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native Deployment[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native Deployment
 
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
 

Recently uploaded

Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 

Recently uploaded (20)

Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 

Merging Microservices Architecture with SOA Practices

  • 1. Merging microservices architecture with SOA prac9ces Chris Haddad VP Pla&orm Evangelism 15 September 2014
  • 2. 2 About the Presenter • Chris Haddad ๏ VP Pla?orm Evangelism ๏ F500/G2000 Advisor ๏ Cloudy DevOps for Dev guy ๏ API Strategy and SOA Roadmap consultant ๏ Former Gartner research team leader Architect ๏ SaaS and PaaS ๏ Service por?olio and infrastructure ๏ Data management ๏ Java, .NET, JavaScript, Open Source Learn more about me • Follow me @cobiacomm on Twitter • Blog: http://blog.cobia.net/cobiacomm • Decks: http://www.slideshare.net/cobiacomm/ • Profle: http://www.linkedin.com/in/cobiacomm/ • On Google+ too
  • 3. Agenda • Service Success and Service Angst • Are microservices the answer? • Microservice Mindset • How to properly define, decouple, and size a microservice. • What DevOps prac9ces overcome microservice deployment roadblocks • When microservices create fragile instead of an9fragile building blocks 3
  • 4. Service Success – Extend Legacy Reach 4
  • 5. Service Success – Extend Business Reach
  • 6. Service Success – Useful Service Blocks 6 Customer Account Inventory Product Payment Order Invoice Fulfillment
  • 7. Service Success – Agility at Scale ๏ How do you measure agility? ๏ Have services increased your agility? ๏ Does IT service agility exist? http://blog.cobia.net/cobiacomm/2013/03/19/accelerating-business-agility-with-app-factory-devops-paas/
  • 9. Do SOA An9-­‐Pa_erns Prevail? Symptoms ๏ Isola9on, Uniqueness, Duplica9on ๏ Tight Coupling and Build Again Cause ๏ Lack of Trust -­‐ Not Invented Here [NIH] ๏ Shared Service Invisibility ๏ Teams do not know about a service ๏ Non-­‐func9onal and func9onal requirements are not well documented 9
  • 10. Tired of Big SOA? ๏ Set up a cross-­‐func9onal SOA Working Group ๏ Develop a SOA Adop9on Plan ๏ Define Target Service Por?olio ๏ Develop a Business Case ๏ Plan and Fund Development of SOA Infrastructure ๏ Establish New Roles ๏ Plan Training and Mentoring for Staff ๏ Develop Corporate Policies, Guidelines, and Best Prac9ces ๏ Ins9tute SOA Governance Processes ๏ Establish New Incen9ves that Reward Good Behavior ๏ Iden9fy Candidate Projects ๏ Establish Priori9es ๏ Reassess Your Sogware Development LifeCycle (SDLC) 10
  • 11. Can we MicroSize SOA? 11
  • 12. Be Like Mike! – aka NetFlix 12
  • 13. Microservices to the Rescue Microservices Defined ๏ A small problem domain ๏ Built and deployed by itself ๏ Runs in its own process ๏ Integrates via well-­‐known interfaces ๏ Owns its own data storage 13 Source: http://www.brunton-spall.co.uk/post/2014/05/21/what-is-a-microservice-and-why-does-it-matter/
  • 14. Microservices to the Rescue “designing so<ware applica?ons as suites of independently deployable services.” Common Characteris9cs ๏ organiza9on around business capability ๏ automated deployment ๏ intelligence in the endpoints ๏ decentralized control of languages and data Source: Mar9n Fowler h_p://mar9nfowler.com/ar9cles/microservices.html 14
  • 15. Microservices Scope ๏ Coarse Grained, Atomic, Business Capability ๏ Example ๏ Customer Profile ๏ Product Catalogue ๏ Shopping Cart ๏ Account Ac9vity ๏ Ra9ngs ๏ Recommenda9ons / Reviews 15
  • 16. SOA == Microservices ๏ Services expose a business capability ๏ Factor applica9ons into composable services ๏ Re-­‐use service building blocks ๏ DRY (Don’t Repeat Yourself) ๏ Shared service delivery ๏ “Microservices is SOA, for those who know what SOA is” Source: Steve Jones 16
  • 17. SOA != Microservices SOA ๏ Services Deployed in a Shared Bus ๏ One Team Goal ๏ Centralize Media9on ๏ Not prescrip9ve on the back-­‐end implementa9on pa_ern 17 Micro-­‐services ๏ Services Deployed at the Edge ๏ Teams aligned with Business Units ๏ Dumb Infrastructure ๏ Prescribes back-­‐end implementa9on pa_ern “SOA is a lame enterprise approach, whereas microservices are a cool hacker approach.” Source: Ycombinator
  • 18. Microservice Roadblocks ๏ How big is a micro-­‐service? (UX-­‐first approach, data domain approach) ๏ How decoupled is a micro-­‐service? (Dependencies, versioning, rou9ng, linking data) ๏ How to micro-­‐size a business capability (granularity, user experience composi9on) ๏ How to take a RESTful approach towards managing micro-­‐service dependencies (DNS, /etcd, load balancing) 18
  • 19. Microservice Myths and Legends ๏ The NetFlix Legend – QoS and rapid delivery ๏ Micro-­‐services Foster Rapid Evolu9on ๏ Agility, Crea9ve Experimenta9on, and Dynamic Composi9on ๏ Silos are good (if Micro-­‐serviced) ๏ Containeriza9on Panacea ๏ Lifecycle Complexity is Overblown ๏ Micro-­‐services don’t require SOA principles to succeed 19
  • 20. Agenda • How to properly define, decouple, and size a microservice. • What DevOps prac9ces overcome microservice deployment roadblocks • When microservices create fragile instead of an9fragile building blocks 20
  • 21. DevOps Prac9ces Microservices Pre-­‐requisites ๏ Business Domain Responsibility Decomposi9on ๏ User Interface Integra9on ๏ Communica9on Protocols ๏ Data Formats ๏ Redundant Data ๏ Business Intelligence Interfaces ๏ Root Cause Analysis (Logging, Monitoring) ๏ High Availability and Fault Tolerance ๏ Dynamic Service Management Adapted From: Stefan Tilkov h_p://www.infoq.com/presenta9ons/Breaking-­‐the-­‐Monolith 21
  • 22. DevOpS Pa_erns Loosely couple ๏ Bounded Context ๏ Tolerant Reader ๏ Consumer driven Contracts ๏ Ubiquitous Language 22 Source: Martin Folwer http://martinfowler.com/articles/microservices.html#MicroservicesAndSoa
  • 23. DevOpS Pa_erns Loosely couple ๏ Bounded Context ๏ Tolerant Reader ๏ Consumer driven Contracts ๏ Ubiquitous Language ๏ Silos per business capability ๏ Separate database per product 23 Source: Martin Folwer http://martinfowler.com/articles/microservices.html#MicroservicesAndSoa
  • 24. Agenda • How to properly define, decouple, and size a microservice. • What DevOps prac9ces overcome microservice deployment roadblocks • When microservices create fragile instead of an9fragile building blocks 24
  • 25. Fragility and An9-­‐Fragility “An9-­‐fragility does not merely withstand a shock but actually improves because of it.” ๏ Redundancy ๏ Clustering, Service Farms ๏ Failover ๏ Watchdog monitors , Circuit breakers 25
  • 26. Fragility and An9-­‐Fragility “An9-­‐fragility does not merely withstand a shock but actually improves because of it.” Achieve High Availability in Distributed Systems through: ๏ Redundancy ๏ Failover Tradi9onal Service way ๏ Dedicated ac9ve-­‐ac9ve, ac9ve-­‐passive instances Micro-­‐services way ๏ Dynamic instance provisioning, graceful degrada9on 26
  • 27. Fragility and An9-­‐Fragility ๏ Redundancy Strategies ๏ Clustering – maintain session state ๏ Service Farms – iden9cal ac9ve nodes ๏ Infrastructure ๏ Load Balancers – route to available nodes ๏ Elas9c service provisioning – spin up/down based on load and availability 27
  • 28. Fragility and An9-­‐Fragility ๏ Failover Strategies ๏ Load Balancers – route to available nodes ๏ Watchdog Health Monitors -­‐ iden9fy break points ๏ Circuit breakers [h_ps://github.com/Ne?lix/Hystrix ] ๏ Infrastructure ๏ Intelligent Content Rou9ng ๏ Topics / Queues ๏ Management Scripts – restart service instances ๏ PaaS Service Management 28
  • 29. Start Small ๏ Implement SOA principles on a project-­‐by-­‐project basis ๏ Iden9fy rela9onship between services and business capabili9es ๏ Build a top-­‐down and bo_oms-­‐up data model ๏ Work with your Enterprise Architecture Team 29
  • 30. SOA & Microservices Reconcilia9on ๏ When to create services ๏ Create a service when sharing a business capability ๏ When to create APIs ๏ Sharing a service outside a domain of control ๏ Targe9ng the widest possible reach and consump9on ๏ Offering the service across na9ve web infrastructure ๏ Maximizing asymmetric evolu9on between service clients, interface, and implementa9on. ๏ When to create and use microservices ๏ Building an applica9on crossing domains ๏ Ra9onalizing and consolida9ng your SOA por?olio 30
  • 31. 31 Accelerate Your IT Business Strategy with WSO2 Services
  • 32. References ๏ SOA and API Convergence Strategy and Tac7cs ๏ Promo7ng service reuse within your enterprise and maximizing SOA success ๏ REST Easy: API Design, Evolu7on, and Connec7on ๏ Mar7n Fowler on Microservices ๏ Stefan Tilkov, Breaking the Monolith ๏ Brunton Sprall: What is a microservice and why does it maJer 32