.NET Framework 4.0 to become less SOAP-centric, embrace REST

By Scott M. Fulton, III | Published October 1, 2008, 5:37 PM

It was surprising enough when four years ago, Microsoft made an historic decision to ditch its own Web services architecture attempts and go with the flow. Today, it announced its next version of Windows will go with a different flow.

For the last four years, one of the most prominent signs of Microsoft's change of thinking with regard to the division of labor in programming, has been its embrace of Simple Object Access Protocol (now just called SOAP, after too much deliberation over the acronym) in Windows Communication Foundation (WCF). It was Web standards organizations, not Microsoft, that initially drove the widespread adoption of so-called WS-* services that use SOAP, but Windows' embrace of SOAP later cemented the standard as a fixture of Web development.

Initially, WS-* support was to be the hallmark of Microsoft's next-generation operating system back when it was still code-named "Longhorn," but later it was retrofitted to later editions of Windows XP, as well as to the .NET Framework.

But now that the tide of developer sentiment has recently shifted toward a new Web services model, that trades SOAP's platform independence for a more simplistic transaction structure called Representational State Transfer (REST), Microsoft is saying that it will be building what it's calling a "unified XAML model" into the next editions of both WCF and .NET. Those components will premiere in Windows 7, and beta testing will begin later this month.

As .NET Framework product manager Steven Martin described on his blog this afternoon, "As developers are broadly adopting the use of web services to build applications (using a spectrum of both advanced WS-* services as well as lighter weight RESTful services), they are reusing services that can live disparately across their enterprises, or on the Web. The best part of composite applications is that they can improve productivity and efficiency on the dev side and give more power to end users for accessing and managing data that's most critical to the business. As a result of the growing popularity of composite apps, developers require new levels of sophistication for building distributed, long-running, and workflow-centric applications."

That's the crux of Microsoft's marketing message explaining the move toward the REST model. But a white paper also released by Microsoft today takes that language somewhat deeper, going so far as to call into question the viability of the very aspects the company had cited as recently as months earlier as its reasons for embracing SOAP in the first place.

"Composite apps present new challenges around scalability, performance and reliability," reads Microsoft's latest "Overview" white paper on its new "RESTful" technology, code-named "Dublin" (DOCX available here). "The tried and true strategies for optimizing traditional applications do not satisfy in the more complex environment of composite applications. To address these requirements, composite applications must adopt more sophisticated application architectures -- including managing of highly asynchronous transactions, automation of long-running durable workflows, coordination of processes across very heterogeneous environments and seamless interoperability across platforms using standards. Increasingly, customers are turning to workflow-centric and 'declarative' approaches of defining application logic to help manage this complexity."


BETACHECK

For more:


On the day that Microsoft first announced its WS-* technology adoption publicly, its product managers cited as its reasons for doing so what they called the "four pillars:" scalability, performance, availability, and reliability. (Marketers since that time have merged the final two items into one.) This February 2007 study by WCF program manager Saurabh Gupta graphically demonstrated the superior performance, scalability, and availability of WS-* Web services over the technologies that Microsoft had previously employed prior to embracing WS-* and SOAP, including ASP.NET Web Services (ASMX) and the Web Services Enhancements (WSE) add-on to Visual Studio 2005.

"To summarize the results, WCF is 25%-50% faster than ASP.NET Web Services, and approximately 25% faster than .NET Remoting," reads Gupta's conclusions. "Comparison with .NET Enterprise Service is load dependant, as in one case WCF is nearly 100% faster but in another scenario it is nearly 25% slower. For WSE 2.0/3.0 implementations, migrating them to WCF will obviously provide the most significant performance gains of almost 4x." Earlier in the study, Gupta warned that the chief limiting factor in any SOA system is the implementation of that service, rather than the underlying technology.

Whether a REST implementation will be significantly more scalable or perform better than a similar SOAP implementation may yet be proven by similar tests. Perhaps we'll see some of those tests during Microsoft's PDC in Los Angeles at the end of the month.

Next: The real differences between SOAP and REST...

1 | 2 | Next Page →

Comments

View comments by with a score of at least

Why is microsoft always copying the sun,s product?

Score: 0

|

Good article for this site yet quite behind the times.

The MVC pattern is not new but around long enough that it was core of many now redundant technologies and mayor systems driving the world's economy are build with SOAP/REST based on the architects decisions, which are based on business requirements. (unlike which OS to support on BN of course!!! :))

I don't have firm dates but REST is around since 2000 and SOAP since the last millennium... No need to panic...

Score: 0

|

Indeed, REST has been around for that long, but as I'm sure you'll agree, Microsoft has taken that long to catch up. And as a result, a lot of the world has to catch up along with it.

-SF3

Score: 0

|

I am sure it helps exposing it to greater masses but MSFT enterprise systems have it in active usage. I guess this all ties into the 'Windows Cloud' thing and for what it's worth .NET client / Java server systems are not going away that soon so hopefully it makes it lighter on the UI devs.

Score: 0

|

So basically Microsoft is about to drop the SOAP.

Score: 0

|

I hope steve jobs is not entering the showers too . . :S

Score: 0

|

I just wish they would make it so you wouldn't have to have multiple versions of Framework installed. The 3.5 framework should be all I need installed to run anything 3.5 based and before. No, I'm not a programmer anymore.. so what Im saying is pretty ignorant. But it's sort of like Java. I only (usually) need one version of JRE installed (the newest) and things run fine. On this computer (my rm's), it has 4 different versions of Framework.. And even more annoying.. If something screws up, like ATI's Catalyst, because there's something wrong with Framework 2.0.. It's a pain to fix (sometimes). anyway, sorry, ranting.

Score: 0

|

You don't have multiple versions of the .Net Framework. You have additions to the 2.0 Framework.

2.0 is the Framework. 3.0 just adds a few more dlls to the 2.0 Framework. 3.5 adds 4 more dlls to the 3.0 Framework. So think of 3.0 and 3.5 as expansion packs not full frameworks.

Score: 0

|

The whole point of .NET is that you load the version you need when you need it. They don't all sit in RAM when they're not in use. That is also why there is no backwards compatibility - it's not needed. Why would you want to load all of .NET 3.5 when you run 1.1 applications? Just load 1.1 and call it a day. Yes, it costs more disk space if you install all of them but it also is less RAM intensive.

.NET was designed to be truly version independent in the way descrined above as Java promised it would be and failed abysmally. I'm no fan of MicroSoft but this really does work.

Score: 0

|

users and sysadmins hate .net. Very little benefit for us and a lot of pain.

Developers and Microsoft love it.

Score: 0

|

What about 1.1?

Score: 0

|

Yes, you do have multiple version of .Net Framework.

I have seen applications which required:
- specific language version of 1.1 (worked with one, did not with another)
- specific patch level of 1.1 (or Hasta la Vista, dear Sharepoint)
- required specifically 2.0 SDK
- required 2.0 with sp1
- required 3.0
- required 2.0 and failed to work if there was 3.0 or 3.5 installed (ATI, 8.9 Catalyst, Vista x64)

In short, .Net Framework is one of the most poorly implemented concepts in history... not to mention huge memory footprints, elaborate yet vague error messages and messily distributed access rigths management.

However, on a small scale, with simple applications or with responsible developers who take pains to support them, .Net works fine. Just don't try to build any large scale solutions with that.

Regards,
Ruemere

Score: 0

|

Exchange Server 2010 goes live, will extend rights-managed e-mail to browsers

A new feature will give companies a way to prevent users from manipulating e-mail content they receive based on what the messages contain.

Google Chrome 4: Yes, it's fast, but is it usable?

As Betanews readers have responded to our stories about Chrome's JavaScript superiority...Does that mean we'd actually use this browser? Well...

Video: Netflix on PlayStation 3

Netflix has come to the PlayStation 3 via Blu-ray and BD-Live.

Early build of Moblin 2.1 improves connectivity, but not device support

The Linux Foundation's Atom-centric OS yesterday received a major overhaul with the project release of Moblin 2.1 for netbooks and nettops.

Qualcomm: $1.3 billion Samsung licensing deal unrelated to fair trade violations

Samsung has come to a 15-year licensing deal with Qualcomm over 3G and 4G wireless technology.

Firefox turns five: Thanks for giving us a choice

Carmi Levy | Wide Angle Zoom: No longer the phoenix rising from the ashes, Mozilla has carried on more than just Netscape's legacy.

Nokia's 'limited number' of recalled chargers exceeds 14 million

Today, the Finnish phone maker has begun a recall of mobile phone chargers that are a shock hazard.

Ubuntu 9.10 upgraders report frustration

For those Wine aficionados out there, beware of the remote possibility that your Linux system could be infected by Windows-seeking malware.

Supreme Court considers patentability of abstract methods today

Can software that executes a formula for a business process qualify for federal patents? An appeals court already said no, and inventors are making their case.

Thanks, iPhone: Google buys mobile advertiser AdMob for $750 million

AdMob came to thrive thanks to the iPhone's popularity, now Google has bought it.

Myka announces its latest Linux-based 'net top box'

Myka's ION brings Boxee, XMBC, and much more to HDTVs.