the road to a service oriented architecture (soa)

20
The road to a Service Oriented Architecture is paved with a message based infrastructure

Upload: mauro-servienti

Post on 15-Feb-2017

528 views

Category:

Software


0 download

TRANSCRIPT

Page 1: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

The road to a Service Oriented

Architectureis paved with a message based infrastructure

Page 2: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

Mauro ServientiSolution Architect @ Particular Software, makers of NServiceBus

[email protected]@mauroservienti

Page 3: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

All I want to do when I wake up in the morning is…(cit. Rosanna, Toto, Toto IV)

Page 4: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

Tickets web site

Buy a ticket

Stage dive… :-)

Page 5: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

All what they want to do is…

Page 6: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

Display available ticketsReserve with the theater

Charge my credit card

Deal with insuranceShip tickets

Deal with their stuff

Page 7: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

Sometimes order is important…

Sometimes not

Page 8: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

spot the

ISSUE

Page 9: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

Multiple resources --

Multiple owners

Page 10: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

Transaction boundaries• user perspective: single operation• ticketing system perspective: multiple operations

• That should be “atomic”

• The business TX crosses multiple boundaries• Theater reservation• Credit card• Insurance• Shipping• Internal stuff

• End we’ll end up in a…

Page 11: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

…big ball of mud…When crossing service boundarieswe cannot expect

transactions to work

SOABoundariesare explicit

Page 12: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

DTC forget you must

Compensation you should welcome

Idempotency your best friend is

Page 13: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

Messages you wantMessages are

AtomicMessages are

UniqueEasily implements

Ledgersemantic

Page 14: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

Messaging PatternsBecause not all communication is born equal

Page 15: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

Request/Response

message sent to someone

implies some coupling

we know each other

Page 16: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

Pub/Sub

broadcasted event, in the past

implies less coupling

subscribers know the publisher

Page 17: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

Tickets reservation service

Tickets reservation service

Order management service

Order management service

Tickets reservation service

Credit Card service

Marketing service

Other stuff

Buy ticket

Charge Card

Ticket reserved

Reserve Tickets

Page 18: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

Messages in a nutshell• Less coupling• respect your boundaries

• No temporal coupling• messages are asynchronous

• Much less maintenance/deployment headaches• autonomous components

• Easy scale-out• competing consumers

• Guaranteed delivery• with error management

Page 19: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

Do you want more?

Free e-book available at:

http://go.particular.net/cloudconfE

Page 20: THE ROAD TO A  SERVICE ORIENTED ARCHITECTURE (SOA)

Thank youGo! SOA-fy your world