The Author Online Book Forums are Moving

The Author Online Book Forums will soon redirect to Manning's liveBook and liveVideo. All book forum content will migrate to liveBook's discussion forum and all video forum content will migrate to liveVideo. Log in to liveBook or liveVideo with your Manning credentials to join the discussion!

Thank you for your engagement in the AoF over the years! We look forward to offering you a more enhanced forum experience.

arnonrgo (62) [Avatar] Offline
m.dr (70) [Avatar] Offline
Re: Reservations - SOA Pattern
hi Arnon -

Enjoying the book. Just wondering if there is going to be a new release soon. The copy I received (month ago) does not have quite a few of the diagrams listed.

Also its stopped at end of Part 1 (Patterns).

Will there be a new update to have the Anti - Patterns - if not at least a copy with the figures. Or if there is a different place to get it let us know.

Look forward to hearing from you.


arnonrgo (62) [Avatar] Offline
Re: Reservations - SOA Pattern
I don't know why there are diagrams missing from the copy you got- if you send me your email to arnon at rgoarchitects dot com I can send you a PDF with the first 5 chapters
There is going to be at least one more pattern chapter ( I have a few more patterns I want to document like aggregated reporting or legacy bridge and some well known patterns like service bus and orchestration) There will also be at least one anti-pattern chapter. I already published one anti pattern and (hopefully) next week the nano-services anti-pattern will also be published

lukadt (3) [Avatar] Offline
Re: Reservations - SOA Pattern
Hi Arnon, i really appreciate your reservation pattern and the way you expose it.
i'd like to see some simple real world example in your tecnology mapping..
let me explain a scenario i'm facing off these days and let's see if you can give me valuable suggestions useful to the whole community....

in my scenario i have a travel agent system that acts as a service facade to the client using 3 service providers (one for hotel, one for museum and one for flights)...
basically the user invoke reservations on travel agent facade...
the travel agent system invoke the 3 web service (.asmx) provider for reserve hotel, museum and flights,
so the unit of work for this scenario is the classic long running distributed transaction that include 3 web services coordination...

i want be sure that if one of 3 providers fail to commit reservation, all action done by the other
service providers will be rolled back (in this scenario i don't want partial failures).

How would you garantee data consistency?
thanks a lot in advance
arnonrgo (62) [Avatar] Offline
Re: Reservations - SOA Pattern
I don't know enough about your system to be sure so I am generalizing here but it seems that what you need is a Saga ( - Which is provide a transaction-like setup
I wouldn't try to coordinate a distributed-transaction but I would probably add another service that will act as coordinator and will follow-up on the replies from the different services. This service can be a Transactional Service (see chapter 2) so it will be internally consistent and will implement a soft-2-phase commit outside so the overall system will be "eventually consistent"
Note that since you won't have a real distributed transaction there can be interim phases where there would be a reservation on one system and no reservation on others.

Hope this helps

lukadt (3) [Avatar] Offline
Re: Reservations - SOA Pattern
Thanks a lot for your quick reply. I upload an image of my scenario to better explain what i'm referring to, howewer Saga seems to fit very well smilie
it would be great if you add a very simple self-implementing saga code in the mapping technology part (as you have done in the reservation pattern)

arnonrgo (62) [Avatar] Offline
Re: Reservations - SOA Pattern
I understood the scenario - what I don't know are the system's quality attributes like is it ok if the state remains partially consistent for a day/week/no time at all? is it important to be able to switch/add more ordering sources? etc. As you probably know, these types of questions tend to affect the architectural solution
Regarding adding some saga code - that's a nice idea, but I think most people would appreciate if I finish up the other patterns first smilie

lukadt (3) [Avatar] Offline
Re: Reservations - SOA Pattern
The system ordering sources are a fixed number (static).
The state consistency should be total.
The only inconsistencies states allowed are the ones elapsed between a service provider failure and its compensating method.
We all our waiting for your book, it's all up to you to add some code where you think it would be better...
Saga strategy has been adopted by a lot of commercial tools (i.e. biztalk server) but i personally think in some scenario a self implementation could be enough even if not error-prone.
Thanks again, all my best
ninatbui (2) [Avatar] Offline
Re: Reservations - SOA Pattern
My ebook copy has many missing diagrams. Can you send me a complete copy of what you have so far to my email address:

I purchased this copy back in Sep 2009.
arnonrgo (62) [Avatar] Offline
Re: Reservations - SOA Pattern
Hi Nina
Can you send me the PDF you got so I can pass it to manning (hopefully they'll fix that) arnon at rgoarchitects dot com