Asynchronous messaging benefits, patterns, technologies
-
Upload
alexander-van-trijffel -
Category
Software
-
view
78 -
download
3
Transcript of Asynchronous messaging benefits, patterns, technologies
![Page 1: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/1.jpg)
Asynchronous messagingAsynchronous messaging Benefits, Patterns,
Technologies
![Page 2: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/2.jpg)
Exercise: Box Breathing
![Page 3: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/3.jpg)
Box Breathing
![Page 4: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/4.jpg)
![Page 5: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/5.jpg)
![Page 6: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/6.jpg)
![Page 7: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/7.jpg)
Point-to-Point Communication
![Page 8: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/8.jpg)
![Page 9: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/9.jpg)
![Page 10: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/10.jpg)
When Servers Crash
DBApp[HTTP] $$ Order
TxCall 1 of 3
Call 2 of 3
RollbackServer update
![Page 11: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/11.jpg)
TxApp DBCall 1 of 3
Deadlock
ExceptionWrite to log A B
Call 2 of 3
Where’s the order!?
When Deadlocks Happen
![Page 12: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/12.jpg)
Securing client requests with Messaging
TxQ$$ Order
App
Receive
DBCall 1 of 3
Rollback
Call 2 of 3
Rollback
The order is back in the queue
![Page 13: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/13.jpg)
© 2016 Deloitte The Netherlands 13Insert your footer here
![Page 14: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/14.jpg)
![Page 15: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/15.jpg)
![Page 16: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/16.jpg)
Provider Consumer
Queue
ConsumerConsumer
Send command
![Page 17: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/17.jpg)
Publish event
Provider
Consumer
Queue 1
ConsumerConsumer
Message Bus Consumer
Queue 2
ConsumerConsumer
Consumer
Queue N
ConsumerConsumer
Pub/sub
![Page 18: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/18.jpg)
![Page 19: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/19.jpg)
![Page 20: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/20.jpg)
![Page 21: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/21.jpg)
RPC / REST
![Page 22: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/22.jpg)
Event driven
![Page 23: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/23.jpg)
Travel Agent
BookingInvoicing
Tour guide
Make reservation, pay
Mike registered for tour X, on date Y (event)
Date Traveller
1-1-2017 Mike
ProjectionRead model
![Page 24: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/24.jpg)
Messaging patterns
At least once delivery
Fore and ForgetSagaBASE
Compensating Action
![Page 25: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/25.jpg)
Cross-cutting concerns
![Page 26: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/26.jpg)
![Page 27: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/27.jpg)
Inside services: Pipes and filters
![Page 28: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/28.jpg)
© 2016 Deloitte The Netherlands
28
MSMQ
Messaging middleware
![Page 29: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/29.jpg)
© 2016 Deloitte The Netherlands 29Insert your footer here
![Page 30: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/30.jpg)
© 2016 Deloitte The Netherlands 30Insert your footer here
MassTransit NServiceBusRabbitMQ RabbitMQAzure Service Bus Azure Service BusMSMQ MSMQ
ActiveMQ
![Page 31: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/31.jpg)
Feb 2016: Introduction of asynchronous
messaging
DDTP
![Page 32: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/32.jpg)
Message persistenceMessage routing
Pub/subLoad balancing
Operations QueuesTopics
ExchangesMessages
![Page 33: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/33.jpg)
![Page 34: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/34.jpg)
Create exchangesCreate queues
Message routing C#C# Handling
PipelineSaga state persistenceTest support
Conn. management
Message Types
ConsumersObservers
SagasEndpoints
![Page 35: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/35.jpg)
Resources:
MassTransit / RabbitMQ examples
eventstore-masstransit-poc http://
nldlc0068.dlc.local/projects/TOOLS/repos/eventstore-masstransit-poc
MassTransit Publish/Subscribe examplehttp://
looselycoupledlabs.com/2014/06/masstransit-publish-subscribe-example
Event Driven Architecture Training
All video’s of Udi Dahans’ workshop on request
![Page 36: Asynchronous messaging benefits, patterns, technologies](https://reader034.fdocuments.in/reader034/viewer/2022052514/58a325731a28ab71398b57a3/html5/thumbnails/36.jpg)
Deloitte refers to one or more of Deloitte Touche Tohmatsu Limited, a UK private company limited by guarantee (“DTTL”), its network of member firms, and their related entities. DTTL and each of its member firms are legally separate and independent entities. DTTL (also referred to as “Deloitte Global”) does not provide services to clients. Please see www.deloitte.nl/about for a more detailed description of DTTL and its member firms.Deloitte provides audit, consulting, financial advisory, risk management, tax and related services to public and private clients spanning multiple industries. Deloitte serves four out of five Fortune Global 500® companies through a globally connected network of member firms in more than 150 countries bringing world-class capabilities, insights, and high-quality service to address clients’ most complex business challenges. To learn more about how Deloitte’s approximately 225,000 professionals make an impact that matters, please connect with us on Facebook, LinkedIn, or Twitter.This communication contains general information only, and none of Deloitte Touche Tohmatsu Limited, its member firms, or their related entities (collectively, the “Deloitte Network”) is, by means of this communication, rendering professional advice or services. Before making any decision or taking any action that may affect your finances or your business, you should consult a qualified professional adviser. No entity in the Deloitte Network shall be responsible for any loss whatsoever sustained by any person who relies on this communication.
© 2016 Deloitte The Netherlands