SlideShare a Scribd company logo
Asynchronous Messaging Sergey Shishkin http:// shishkin.org Image source:  http://www.flickr.com/photos/joits/1110215271/
Agenda Why Messaging? –  And what’s wrong with good old RPC? Sample scenario –  News module of the Prism’s StockTrader RI Under the hood of Message Bus – Building a Message Bus in 37 lines of code – And what those 37 lines did not cover? Image source:  http://www.flickr.com/photos/mychatham/206928250/
Communication Styles ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Fallacies of Distributed Computing* *  http:// en.wikipedia.org/wiki/Fallacies_of_Distributed_Computing ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Image source:  http://www.flickr.com/photos/pascalcharest/308357541/
Composite Applications Image source:  http://www.flickr.com/photos/curiouslee/2136283589/ Modularized applications are similar to distributed ones ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Tenets of Service-Orientation* Image source:  http://www.flickr.com/photos/hyper-world/2401419260/ Boundaries are explicit Services are autonomous Services share schema and contract, not class Service compatibility is based upon policy *  http://msdn.microsoft.com/en-us/magazine/cc164026.aspx
Messaging Patterns *  http://www.enterpriseintegrationpatterns.com/toc.html Message Bus is a central place for implementing integration patterns*
Advantages of Messaging (I) Image source:  http://www.flickr.com/photos/renaissancechambara/2288556895/ Loose coupling Separation of concerns Orthogonal architecture
Advantages of Messaging (II) Testing Scalability
Disadvantages of Messaging ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Image source:  http://www.flickr.com/photos/lwr/2257112719/
Guidelines ,[object Object],[object Object],* In terms of DDD Image source:  http://www.flickr.com/photos/rodneytrotter/3323664794/
Look ahead Messaging is the default communication style for cloud-based services Silverlight does not support synchronous communication out of the box Image source:  http://www.flickr.com/photos/bestrated1/2441332480/
DEMO
References ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

More Related Content

Similar to Asynchronous Messaging @DNUG Cologne, 07.04.2009

[WSO2 Integration Summit New York 2019] Emerging Architecture Patterns: API-c...
[WSO2 Integration Summit New York 2019] Emerging Architecture Patterns: API-c...[WSO2 Integration Summit New York 2019] Emerging Architecture Patterns: API-c...
[WSO2 Integration Summit New York 2019] Emerging Architecture Patterns: API-c...
WSO2
 
A Decentralized Reference Architecture for Cloud-native Applications
A Decentralized Reference Architecture for Cloud-native Applications A Decentralized Reference Architecture for Cloud-native Applications
A Decentralized Reference Architecture for Cloud-native Applications
Asanka Abeysinghe
 
An Emerging Architecture Pattern for Agile Integration: Cell-based Architecture
An Emerging Architecture Pattern for Agile Integration: Cell-based ArchitectureAn Emerging Architecture Pattern for Agile Integration: Cell-based Architecture
An Emerging Architecture Pattern for Agile Integration: Cell-based Architecture
All Things Open
 
Cell-based Architecture: An Emerging Architecture Pattern for Agile Integrati...
Cell-based Architecture: An Emerging Architecture Pattern for Agile Integrati...Cell-based Architecture: An Emerging Architecture Pattern for Agile Integrati...
Cell-based Architecture: An Emerging Architecture Pattern for Agile Integrati...
Asanka Abeysinghe
 
A Decentralized Reference Architecture for Cloud-native Applications
A Decentralized Reference Architecture for Cloud-native ApplicationsA Decentralized Reference Architecture for Cloud-native Applications
A Decentralized Reference Architecture for Cloud-native Applications
Asanka Abeysinghe
 
apidays LIVE New York_A Decentralized Reference Architecture for Cloud-native...
apidays LIVE New York_A Decentralized Reference Architecture for Cloud-native...apidays LIVE New York_A Decentralized Reference Architecture for Cloud-native...
apidays LIVE New York_A Decentralized Reference Architecture for Cloud-native...
apidays
 
A Decentralized Reference Architecture for Cloud-native Applications
A Decentralized Reference Architecture for Cloud-native Applications A Decentralized Reference Architecture for Cloud-native Applications
A Decentralized Reference Architecture for Cloud-native Applications
Asanka Abeysinghe
 
apidays LIVE LONDON - A Decentralized Reference Architecture for Cloud-native...
apidays LIVE LONDON - A Decentralized Reference Architecture for Cloud-native...apidays LIVE LONDON - A Decentralized Reference Architecture for Cloud-native...
apidays LIVE LONDON - A Decentralized Reference Architecture for Cloud-native...
apidays
 
Final Year Project Report Example
Final Year Project Report ExampleFinal Year Project Report Example
Final Year Project Report Example
Muhd Mu'izuddin
 
Web-Based Online Embedded Security System And Alertness Via Social Media
Web-Based Online Embedded Security System And Alertness Via Social MediaWeb-Based Online Embedded Security System And Alertness Via Social Media
Web-Based Online Embedded Security System And Alertness Via Social Media
IRJET Journal
 
Cloud data management
Cloud data managementCloud data management
Cloud data management
ambitlick
 
Emerging architecture patterns: API-centric cell-based | Yenlo - WSO2 Integra...
Emerging architecture patterns: API-centric cell-based | Yenlo - WSO2 Integra...Emerging architecture patterns: API-centric cell-based | Yenlo - WSO2 Integra...
Emerging architecture patterns: API-centric cell-based | Yenlo - WSO2 Integra...
Yenlo
 
[WSO2 Integration Summit San Francisco 2019] Emerging Architecture Patterns- ...
[WSO2 Integration Summit San Francisco 2019] Emerging Architecture Patterns- ...[WSO2 Integration Summit San Francisco 2019] Emerging Architecture Patterns- ...
[WSO2 Integration Summit San Francisco 2019] Emerging Architecture Patterns- ...
WSO2
 
System models
System modelsSystem models
System models
Rene Guaman-Quinche
 
Data Centre Network Optimization
Data Centre Network OptimizationData Centre Network Optimization
Data Centre Network Optimization
IJAEMSJORNAL
 
Best Practices to Secure Containerized Apps with Next-Gen WAF
Best Practices to Secure Containerized Apps with Next-Gen WAFBest Practices to Secure Containerized Apps with Next-Gen WAF
Best Practices to Secure Containerized Apps with Next-Gen WAF
DevOps.com
 
Vehicle to Vehicle Communication of Content Downloader in Mobile
Vehicle to Vehicle Communication of Content Downloader in MobileVehicle to Vehicle Communication of Content Downloader in Mobile
Vehicle to Vehicle Communication of Content Downloader in Mobile
ijbuiiir1
 
App for peer-to-peer file transfer
App for peer-to-peer file transferApp for peer-to-peer file transfer
App for peer-to-peer file transfer
IRJET Journal
 
[WSO2 Summit Sydney 2019] Emerging Architecture Patterns: API-centric and Cel...
[WSO2 Summit Sydney 2019] Emerging Architecture Patterns: API-centric and Cel...[WSO2 Summit Sydney 2019] Emerging Architecture Patterns: API-centric and Cel...
[WSO2 Summit Sydney 2019] Emerging Architecture Patterns: API-centric and Cel...
WSO2
 
Distributed Systems in Data Engineering
Distributed Systems in Data EngineeringDistributed Systems in Data Engineering
Distributed Systems in Data Engineering
Adetimehin Oluwasegun Matthew
 

Similar to Asynchronous Messaging @DNUG Cologne, 07.04.2009 (20)

[WSO2 Integration Summit New York 2019] Emerging Architecture Patterns: API-c...
[WSO2 Integration Summit New York 2019] Emerging Architecture Patterns: API-c...[WSO2 Integration Summit New York 2019] Emerging Architecture Patterns: API-c...
[WSO2 Integration Summit New York 2019] Emerging Architecture Patterns: API-c...
 
A Decentralized Reference Architecture for Cloud-native Applications
A Decentralized Reference Architecture for Cloud-native Applications A Decentralized Reference Architecture for Cloud-native Applications
A Decentralized Reference Architecture for Cloud-native Applications
 
An Emerging Architecture Pattern for Agile Integration: Cell-based Architecture
An Emerging Architecture Pattern for Agile Integration: Cell-based ArchitectureAn Emerging Architecture Pattern for Agile Integration: Cell-based Architecture
An Emerging Architecture Pattern for Agile Integration: Cell-based Architecture
 
Cell-based Architecture: An Emerging Architecture Pattern for Agile Integrati...
Cell-based Architecture: An Emerging Architecture Pattern for Agile Integrati...Cell-based Architecture: An Emerging Architecture Pattern for Agile Integrati...
Cell-based Architecture: An Emerging Architecture Pattern for Agile Integrati...
 
A Decentralized Reference Architecture for Cloud-native Applications
A Decentralized Reference Architecture for Cloud-native ApplicationsA Decentralized Reference Architecture for Cloud-native Applications
A Decentralized Reference Architecture for Cloud-native Applications
 
apidays LIVE New York_A Decentralized Reference Architecture for Cloud-native...
apidays LIVE New York_A Decentralized Reference Architecture for Cloud-native...apidays LIVE New York_A Decentralized Reference Architecture for Cloud-native...
apidays LIVE New York_A Decentralized Reference Architecture for Cloud-native...
 
A Decentralized Reference Architecture for Cloud-native Applications
A Decentralized Reference Architecture for Cloud-native Applications A Decentralized Reference Architecture for Cloud-native Applications
A Decentralized Reference Architecture for Cloud-native Applications
 
apidays LIVE LONDON - A Decentralized Reference Architecture for Cloud-native...
apidays LIVE LONDON - A Decentralized Reference Architecture for Cloud-native...apidays LIVE LONDON - A Decentralized Reference Architecture for Cloud-native...
apidays LIVE LONDON - A Decentralized Reference Architecture for Cloud-native...
 
Final Year Project Report Example
Final Year Project Report ExampleFinal Year Project Report Example
Final Year Project Report Example
 
Web-Based Online Embedded Security System And Alertness Via Social Media
Web-Based Online Embedded Security System And Alertness Via Social MediaWeb-Based Online Embedded Security System And Alertness Via Social Media
Web-Based Online Embedded Security System And Alertness Via Social Media
 
Cloud data management
Cloud data managementCloud data management
Cloud data management
 
Emerging architecture patterns: API-centric cell-based | Yenlo - WSO2 Integra...
Emerging architecture patterns: API-centric cell-based | Yenlo - WSO2 Integra...Emerging architecture patterns: API-centric cell-based | Yenlo - WSO2 Integra...
Emerging architecture patterns: API-centric cell-based | Yenlo - WSO2 Integra...
 
[WSO2 Integration Summit San Francisco 2019] Emerging Architecture Patterns- ...
[WSO2 Integration Summit San Francisco 2019] Emerging Architecture Patterns- ...[WSO2 Integration Summit San Francisco 2019] Emerging Architecture Patterns- ...
[WSO2 Integration Summit San Francisco 2019] Emerging Architecture Patterns- ...
 
System models
System modelsSystem models
System models
 
Data Centre Network Optimization
Data Centre Network OptimizationData Centre Network Optimization
Data Centre Network Optimization
 
Best Practices to Secure Containerized Apps with Next-Gen WAF
Best Practices to Secure Containerized Apps with Next-Gen WAFBest Practices to Secure Containerized Apps with Next-Gen WAF
Best Practices to Secure Containerized Apps with Next-Gen WAF
 
Vehicle to Vehicle Communication of Content Downloader in Mobile
Vehicle to Vehicle Communication of Content Downloader in MobileVehicle to Vehicle Communication of Content Downloader in Mobile
Vehicle to Vehicle Communication of Content Downloader in Mobile
 
App for peer-to-peer file transfer
App for peer-to-peer file transferApp for peer-to-peer file transfer
App for peer-to-peer file transfer
 
[WSO2 Summit Sydney 2019] Emerging Architecture Patterns: API-centric and Cel...
[WSO2 Summit Sydney 2019] Emerging Architecture Patterns: API-centric and Cel...[WSO2 Summit Sydney 2019] Emerging Architecture Patterns: API-centric and Cel...
[WSO2 Summit Sydney 2019] Emerging Architecture Patterns: API-centric and Cel...
 
Distributed Systems in Data Engineering
Distributed Systems in Data EngineeringDistributed Systems in Data Engineering
Distributed Systems in Data Engineering
 

Recently uploaded

Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Vladimir Iglovikov, Ph.D.
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 

Recently uploaded (20)

Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 

Asynchronous Messaging @DNUG Cologne, 07.04.2009

  • 1. Asynchronous Messaging Sergey Shishkin http:// shishkin.org Image source: http://www.flickr.com/photos/joits/1110215271/
  • 2. Agenda Why Messaging? – And what’s wrong with good old RPC? Sample scenario – News module of the Prism’s StockTrader RI Under the hood of Message Bus – Building a Message Bus in 37 lines of code – And what those 37 lines did not cover? Image source: http://www.flickr.com/photos/mychatham/206928250/
  • 3.
  • 4.
  • 5.
  • 6. Tenets of Service-Orientation* Image source: http://www.flickr.com/photos/hyper-world/2401419260/ Boundaries are explicit Services are autonomous Services share schema and contract, not class Service compatibility is based upon policy * http://msdn.microsoft.com/en-us/magazine/cc164026.aspx
  • 7. Messaging Patterns * http://www.enterpriseintegrationpatterns.com/toc.html Message Bus is a central place for implementing integration patterns*
  • 8. Advantages of Messaging (I) Image source: http://www.flickr.com/photos/renaissancechambara/2288556895/ Loose coupling Separation of concerns Orthogonal architecture
  • 9. Advantages of Messaging (II) Testing Scalability
  • 10.
  • 11.
  • 12. Look ahead Messaging is the default communication style for cloud-based services Silverlight does not support synchronous communication out of the box Image source: http://www.flickr.com/photos/bestrated1/2441332480/
  • 13. DEMO
  • 14.