Thanks a lot for the patience, for putting some light on my mind! I´ll certainly go deeper on this subject.
;-) On Sat, Mar 7, 2009 at 10:39 AM, Eric Newcomer <[email protected]> wrote: > The challenge here is to try to say something meaningful without writing > something too long for the Web site. > > The shortest explanation I could come up with is: "WS-Transactions are like > everyone sitting in a circle holding > hands, while REST based transactions are like everyone sitting in a circle > passing a ball around." > > WS-Transactions is based on the model in which all resource (database) > sessions are connected using a shared > context, while the REST based approach assumes only one session has > knowledge of the transaction at a given > point in time. > > One other thing you could say is that in the typical TP design when you > move from a single database to a multiple > database transaction, an independent transaction manager is necessary to > coordinate the transaction managers in > each database. Every database has a transaction manager, but it can only > really manage transations for itself. > > I was asked if I could answer this question "without writing a book" and I > tried to do so - of course more information > on TP infrastructure and how 2PC works is available in the book I wrote > with Phil Bernstein. In December we finally > finished the second edition (due out in June), and it also now includes > information about the REST based approach. > But you can also find details about the REST based approach in "RESTful Web > Services" chapter 6. > > Eric > > ------------------------------ > *From:* Marcelo Augusto <[email protected]> > *To:* [email protected] > *Sent:* Friday, March 6, 2009 10:24:21 PM > *Subject:* Re: [service-orientated-architecture] Eric explains the > difference between REST and WS* transactions > > The subject is great, but I found the text a little bit confusing... One > may say I don´t have enough knowledge of some concepts to understand the > text, but I would reply "people who have it can learn something from it?". > > Let´s put this way, as the Philadelphia´ s lawyer would say: "explain it as > if I were 2 years old". > > :-) > > 2009/3/6 Gervas Douglas <gervas.douglas@ gmail.com<[email protected]> > > > >> <<*The SearchSOA.com <http://searchsoa.com/> community has asked **"What >> is the difference between RESTful transactions and Web Services >> transactions?"* >> >> First, it's helpful to define the terms a bit here, because people often >> have a reaction to the term "transaction" that doesn't distinguish between >> local and global transactions. Local transactions are used in every almost >> every database operation today, and this is exactly the same for both Web >> services and RESTful applications. >> >> The question therefore really pertains to global transactions -- those >> that involve more than one database, potentially on different computers -- >> since that's where things are very different. (I should also clarify that >> Web services are a technology while REST is an architectural approach, so >> this is going to be a bit of an apples-to-oranges comparison.) >> >> Web services transactions (as defined in the OASIS WS-Transactions set of >> specifications) are intended to be compatible with existing TP >> infrastructures, which basically evolved from mainframe systems. The REST >> approach, on the other hand, evolved from the Web, which is based on an >> entirely different technology stream. Some of the key differences derive >> from the very different assumptions behind mainframe systems and Web based >> systems. >> >> Mainframe systems were designed assuming an environment for resources and >> users under the control of a single organization. Web based systems on the >> other hand were designed assuming a world wide network of independent but >> cooperating systems under the control of different organizations and >> individuals. Today's corporate IT systems can be more or less divided >> between those developed before the Web and those developed for the Web. >> Systems designed for the Web have much less control over things like >> workload, uptime, the need to provide a good experience to users, etc. These >> different assumptions impact transactions because they result in very >> different solutions to the requirement for distributed access to shared >> data, or shared state. >> >> At the technical level the biggest manifestation of the difference is in >> the design of the communications system. Transactional communications >> mechanisms that evolved from mainframe designs use persistent sessions to >> share state between programs. The communications protocol used in REST >> oriented systems, HTTP, does not support persistent sessions because they >> negatively impact scalability. If you are operating in a carefully >> controlled environment, that impact is manageable. >> >> For compatibility with existing shared state mechanisms, Web services >> transactions propagate shared transactional context among participants in a >> global transaction so that each participant's access to shared state can be >> coordinated with the others. REST based transactions assume that only one >> party to a global transaction accesses the shared state at any given time, >> sort of like passing a token. The other participants have no knowledge of >> what's going on at another participant and their operations on shared state >> can't be coordinated. They are responsible only for knowing what they must >> do when they receive the shared state – when it's their turn. This creates >> is a very different design requirement for handling failure and recovery, >> since it cannot be automated, the trade off in additional application level >> design and coding pays results in a system better suited to the assumptions >> of the Web. >> >> *Eric Newcomer is a distributed computing specialist and independent >> consultant. Newcomer is a chair of the OSGi Alliance Enterprise Expert Group >> and former CTO of IONA Technologies. He writes a blog on OSGi >> matters<http://modualrit.blogspot.com/> >> .>> >> * >> >> *You can find this at: http://searchsoa. techtarget. com/news/ article/0, >> 289142,sid26_ gci1350094, >> 00.html<http://searchsoa.techtarget.com/news/article/0,289142,sid26_gci1350094,00.html> >> * >> >> *Gervas >> * >> > > > > -- > Marcelo Augusto Costa > > > -- Marcelo Augusto Costa BPM/SOA Consultant Phone: (19) 2102 4500 E-mail/MSN: [email protected] Ci&T Visit our site: www.ciandt.com Esta mensagem, incluindo seus anexos, contém informações legais privilegiadas e/ou confidenciais. Caso tenha recebido esta mensagem por engano, por favor informe o remetente e apague-a do seu computador. The information contained in this email message, including any attachment, is privileged and/or confidential. If you have received this email in error, please notify the sender and delete it from your system.
