Is REST eclipsing SOAP Web services as the standard of choice, as we move toward service-orienting our enterprises? Is the Web 2.0 social media accelerating this trend? What does this all mean for enterprise SOA?
'Thousands of Web applications are being built on RESTful Web services, versus SOAP and WS-* interfaces'
Some industry experts are now wondering out loud if this is the way things are heading. James Snell, Dare Obasanjo, Steve Vinoski, and Sergey Beryozkin (and several others) have been engaged in a running online debate about the future potential of WS-* versus REST.
Microsoft's Dare Obasanjo writes, for example, that he was formerly a WS-* advocate, but had an epiphany as he became involved in MSN Live. "...I found myself writing code to convert Microsoft’s GetTopDownloads Web service to an RSS feed, because the SOAP Web service was more complicated to deal with and less useful than an RSS feed. ...I realized that RSS was the quintessential RESTful Web service..."
Dare adds that the rise of social media is also spreading RESTful Web services far and wide, beyond what SOAP Web services could ever dream of reaching:
"...we’ve reached a world where thousands of applications being utilized by millions of end users are built on RESTful Web services on the public Internet. My favorite example of the moment is the Facebook developer platform and before that it was Flickr and Amazon S3. Compare that with the number of SOAP and WS-* interfaces that are being used to build real developer platforms that benefit end users on the Web today.... The only times I encounter someone with good things to say about WS-* is if it is their job to pimp these technologies or they have already 'invested' in WS-* and want to defend that investment."
In response to this post and others, IONA's Sergey Beryozkin lamented, "It feels like the last nail has been banged into a WS-* coffin. It feels like a strong message indeed. No compromise. Either REST or nothing." He posted a series of questions to former co-worker Steve Vinoski, formerly with IONA and now with Verivue, seeking clarification on the advancement of REST standards.
To which Steve responded that "the customers that I saw benefit from WS-related technology gained those benefits only because of IONA-specific innovations that were not part of WS-*. In general, WS-* didn’t do anything for them that wasn’t already possible with prior technologies." He also provided this response:
"In 1999-2000 I thought SOAP was finally going to help glue the CORBA and COM worlds together and make for a happy integrated place. But as I learned more and more about REST, starting at roughly the same time, I saw the light that SOAP was missing the boat, big time, by abusing HTTP."
It's clear from what these experts are saying is that SOA/Web services is entering a new paradigm of simplicity in service development, fueled by the excitement over Web 2.0.
Of course, what goes on within enterprises is a different story. Recent surveys I have been involved with (Evans Data) still find plenty of strength for SOAP-based Web services as part of enterprise SOA, and most practitioners in this space are inclined to work with both sets of standards as situations merit. Few actually see REST as a replacement for SOAP-based services at this time.
In differentiating the roles of SOAP from REST, I think it was best put by Dr. Frank Leymann (University of Stuttgart), whom I had the pleasure of meeting and hearing speak at the recent SOA Congress in Mainz, Germany:
- SOAP/WSDL is about custom interfaces
- REST is about generic interfaces
"Most problems can be solved with either style," he said.