SlideShare ist ein Scribd-Unternehmen logo
1 von 33
Dennis van der Stelt
and building reliable systems
Dennis van der Stelt
Software Architect
http://dennis.bloggingabout.net/
dennis@bloggingabout.net
NServiceBus Community Champ
MESSAGING
@dvdstelt
#lidnug
Dennis van der Stelt
AGENDA
Dennis van der Stelt
Dennis van der Stelt
Separation of concerns
Flexibility & Reusability
Scalability
why all the layers?
Dennis van der Stelt
A monolithic design is characterized by such tight coupling
among modules that they really have no independent existence.
monolithic
Dennis van der Stelt
COUPLING
Which layer has the
worst coupling?
Dennis van der Stelt
Dennis van der Stelt
MONOLITHIC DESIGN
How does my clean code become a big ball of mud?
Database
Dennis van der Stelt
MONOLITHIC DESIGN
How does my clean code become a big ball of mud?
Database
reduce
coupling
Dennis van der Stelt
SpatialTemporalPlatform
coupling aspects
Dennis van der Stelt
PLATFORM
Also known as ‘interoperability’
http, json, xml, xsd, etc…
Dennis van der Stelt
TEMPORAL
Store Front End Shipping Service
Dennis van der Stelt
TEMPORAL
Store Front End Shipping ServiceShipping Service
Dennis van der Stelt
TEMPORAL
Store Front End Shipping ServiceOrder Queue
Dennis van der Stelt
TEMPORAL
Store Front End Shipping ServiceOrder Queue
Dennis van der Stelt
TEMPORAL
Store Front End Shipping ServiceOrder Queue
Dennis van der Stelt
SPATIAL
Dennis van der Stelt
SPATIAL .net
application
.net application
ShipOrder AssignTask
Dennis van der Stelt
Messaging
 Reduces spatial coupling
 XML/JSON for platform coupling
 Asynchronous for temporal coupling
demo
Messaging using WCF
Dennis van der Stelt
PERFORMANCE
RPC versus Messaging
what is the best pizza?
Dennis van der Stelt
TEMPORAL COUPLING
Synchronouscommunication
Order accepted
DoesCompanyHaveCredit(companyId)
Place new order
Company
Dennis van der Stelt
TEMPORAL COUPLING
Asynchronous communication
Order accepted
DoesCompanyHaveCredit(companyId)
Place new order
GotData?
GotData?
GotData?
:)
Dennis van der Stelt
TEMPORAL COUPLING
Event Driven Communication
Order accepted
Publish CompanyHasCredit status
Place new order
Store data
demo
NServiceBus Demo
Dennis van der Stelt
true loose coupling
retries / no data loss
smaller transactions
simplification of structure
improved manageability
Dennis van der Stelt
Warehouse Service
Sales Service
Product Service
Ordering
Products
Shipping
CQRS & Event Sourcing
CRUD
3 Tier
ARCHITECTURAL STYLES
messaging is business agility
Dennis van der Stelt
find me.
http://dennis.bloggingabout.net
dvdstelt@outlook.com

Weitere ähnliche Inhalte

Ähnlich wie LIDNUG : Reliable applications with messaging

How to fail or succeed with desktop virtualization and workspace mobility
How to fail or succeed with desktop virtualization and workspace mobilityHow to fail or succeed with desktop virtualization and workspace mobility
How to fail or succeed with desktop virtualization and workspace mobility
Denis Gundarev
 
The Mobile Enterprise Cloud Hosted Virtual Desktops
The Mobile Enterprise Cloud Hosted Virtual DesktopsThe Mobile Enterprise Cloud Hosted Virtual Desktops
The Mobile Enterprise Cloud Hosted Virtual Desktops
Desktone
 
The Mobile Enterprise Cloud Hosted Virtual Desktops
The Mobile Enterprise Cloud Hosted Virtual DesktopsThe Mobile Enterprise Cloud Hosted Virtual Desktops
The Mobile Enterprise Cloud Hosted Virtual Desktops
Desktone
 
Keynote Dev Tech Days09
Keynote  Dev Tech Days09Keynote  Dev Tech Days09
Keynote Dev Tech Days09
Gregory Renard
 

Ähnlich wie LIDNUG : Reliable applications with messaging (20)

Change your architecture during deployment
Change your architecture during deploymentChange your architecture during deployment
Change your architecture during deployment
 
Sunny Tech 2019 - Craft Forever
Sunny Tech 2019 - Craft ForeverSunny Tech 2019 - Craft Forever
Sunny Tech 2019 - Craft Forever
 
How to fail or succeed with desktop virtualization and workspace mobility
How to fail or succeed with desktop virtualization and workspace mobilityHow to fail or succeed with desktop virtualization and workspace mobility
How to fail or succeed with desktop virtualization and workspace mobility
 
Rethink your architecture - Marten Deinum
Rethink your architecture - Marten DeinumRethink your architecture - Marten Deinum
Rethink your architecture - Marten Deinum
 
The Mobile Enterprise Cloud Hosted Virtual Desktops
The Mobile Enterprise Cloud Hosted Virtual DesktopsThe Mobile Enterprise Cloud Hosted Virtual Desktops
The Mobile Enterprise Cloud Hosted Virtual Desktops
 
The Mobile Enterprise Cloud Hosted Virtual Desktops
The Mobile Enterprise Cloud Hosted Virtual DesktopsThe Mobile Enterprise Cloud Hosted Virtual Desktops
The Mobile Enterprise Cloud Hosted Virtual Desktops
 
Virtual Desktops: How Secure Can They Be?
Virtual Desktops: How Secure Can They Be?Virtual Desktops: How Secure Can They Be?
Virtual Desktops: How Secure Can They Be?
 
VladimirNovikovSlides.ppt
VladimirNovikovSlides.pptVladimirNovikovSlides.ppt
VladimirNovikovSlides.ppt
 
Citrix Day 2013: Keynote von Carlos Rosal
Citrix Day 2013: Keynote von Carlos RosalCitrix Day 2013: Keynote von Carlos Rosal
Citrix Day 2013: Keynote von Carlos Rosal
 
Elastically scalable architectures with microservices. The end of the monolith?
Elastically scalable architectures with microservices. The end of the monolith?Elastically scalable architectures with microservices. The end of the monolith?
Elastically scalable architectures with microservices. The end of the monolith?
 
Innovations that simplify desktop virtualization
Innovations that simplify desktop virtualization Innovations that simplify desktop virtualization
Innovations that simplify desktop virtualization
 
Smalltalk speaks dot net
Smalltalk speaks dot netSmalltalk speaks dot net
Smalltalk speaks dot net
 
Porta ovunque il tuo desktop
Porta ovunque il tuo desktopPorta ovunque il tuo desktop
Porta ovunque il tuo desktop
 
Windows Embedded ESC Silicon Valley Keynote Address
Windows Embedded ESC Silicon Valley Keynote AddressWindows Embedded ESC Silicon Valley Keynote Address
Windows Embedded ESC Silicon Valley Keynote Address
 
ESC Boston 2010
ESC Boston 2010ESC Boston 2010
ESC Boston 2010
 
Keynote Dev Tech Days09
Keynote  Dev Tech Days09Keynote  Dev Tech Days09
Keynote Dev Tech Days09
 
SEE the Cloud: Hans Timmerman - De cloud daalt neer op aarde
SEE the Cloud: Hans Timmerman - De cloud daalt neer op aardeSEE the Cloud: Hans Timmerman - De cloud daalt neer op aarde
SEE the Cloud: Hans Timmerman - De cloud daalt neer op aarde
 
Introduction to CQRS
Introduction to CQRSIntroduction to CQRS
Introduction to CQRS
 
NextStep Boston 2018 - Monoliths or Microservices, Francisco Menezes
NextStep Boston 2018 - Monoliths or Microservices, Francisco MenezesNextStep Boston 2018 - Monoliths or Microservices, Francisco Menezes
NextStep Boston 2018 - Monoliths or Microservices, Francisco Menezes
 
Deconstructing the brian paradox
Deconstructing the brian paradoxDeconstructing the brian paradox
Deconstructing the brian paradox
 

Mehr von Dennis van der Stelt

Mehr von Dennis van der Stelt (9)

Dealing with eventual consistency
Dealing with eventual consistencyDealing with eventual consistency
Dealing with eventual consistency
 
Dealing with eventual consistency
Dealing with eventual consistencyDealing with eventual consistency
Dealing with eventual consistency
 
Duplicating data or replicating data in Micro Services
Duplicating data or replicating data in Micro ServicesDuplicating data or replicating data in Micro Services
Duplicating data or replicating data in Micro Services
 
Silverlight & WCF RIA
Silverlight & WCF RIASilverlight & WCF RIA
Silverlight & WCF RIA
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
AppFabric Velocity
AppFabric VelocityAppFabric Velocity
AppFabric Velocity
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
App fabric introduction
App fabric introductionApp fabric introduction
App fabric introduction
 
SOLID Principles part 1
SOLID Principles part 1SOLID Principles part 1
SOLID Principles part 1
 

Kürzlich hochgeladen

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Kürzlich hochgeladen (20)

Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
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...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
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
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 

LIDNUG : Reliable applications with messaging

  • 1. Dennis van der Stelt and building reliable systems Dennis van der Stelt Software Architect http://dennis.bloggingabout.net/ dennis@bloggingabout.net NServiceBus Community Champ MESSAGING @dvdstelt #lidnug
  • 2. Dennis van der Stelt AGENDA
  • 4. Dennis van der Stelt Separation of concerns Flexibility & Reusability Scalability why all the layers?
  • 5. Dennis van der Stelt A monolithic design is characterized by such tight coupling among modules that they really have no independent existence. monolithic
  • 6. Dennis van der Stelt COUPLING Which layer has the worst coupling?
  • 8. Dennis van der Stelt MONOLITHIC DESIGN How does my clean code become a big ball of mud? Database
  • 9. Dennis van der Stelt MONOLITHIC DESIGN How does my clean code become a big ball of mud? Database
  • 11. Dennis van der Stelt SpatialTemporalPlatform coupling aspects
  • 12. Dennis van der Stelt PLATFORM Also known as ‘interoperability’ http, json, xml, xsd, etc…
  • 13. Dennis van der Stelt TEMPORAL Store Front End Shipping Service
  • 14. Dennis van der Stelt TEMPORAL Store Front End Shipping ServiceShipping Service
  • 15. Dennis van der Stelt TEMPORAL Store Front End Shipping ServiceOrder Queue
  • 16. Dennis van der Stelt TEMPORAL Store Front End Shipping ServiceOrder Queue
  • 17. Dennis van der Stelt TEMPORAL Store Front End Shipping ServiceOrder Queue
  • 18. Dennis van der Stelt SPATIAL
  • 19. Dennis van der Stelt SPATIAL .net application .net application ShipOrder AssignTask
  • 20. Dennis van der Stelt Messaging  Reduces spatial coupling  XML/JSON for platform coupling  Asynchronous for temporal coupling
  • 22. Dennis van der Stelt PERFORMANCE RPC versus Messaging
  • 23.
  • 24.
  • 25. what is the best pizza?
  • 26. Dennis van der Stelt TEMPORAL COUPLING Synchronouscommunication Order accepted DoesCompanyHaveCredit(companyId) Place new order Company
  • 27. Dennis van der Stelt TEMPORAL COUPLING Asynchronous communication Order accepted DoesCompanyHaveCredit(companyId) Place new order GotData? GotData? GotData? :)
  • 28. Dennis van der Stelt TEMPORAL COUPLING Event Driven Communication Order accepted Publish CompanyHasCredit status Place new order Store data
  • 30. Dennis van der Stelt true loose coupling retries / no data loss smaller transactions simplification of structure improved manageability
  • 31. Dennis van der Stelt Warehouse Service Sales Service Product Service Ordering Products Shipping CQRS & Event Sourcing CRUD 3 Tier ARCHITECTURAL STYLES
  • 33. Dennis van der Stelt find me. http://dennis.bloggingabout.net dvdstelt@outlook.com