Tuesday, February 21, 2012

Difference between RESTFUL, Resource-Oriented Architecture Versus RPC-XML Sytle Architecuture

One of the learnings what i had in my previous project (Developing SDK for Restful Data Services) was understanding the difference between the above two Architectures. Although the difference looks very simple, understanding it at the core was always confusing. Here i'm going to list few key difference between these two architectures.

RESTFUL Resource-Oriented Architecture:
HTTP URL has everything which client is looking for, it has details about Web Method and Scope details. following example should give good idea about what i mean by Web Method and Scope.
Eg. http://www.google.com/search?q=TEST
in the above HTTP URL search is Web Method and Q=Test is scope detail (In other words Query String)

Always remember a thumb rule when it comes to RESTFUL, it is aways GET Request, which means Get HTTP URL (so URL has everything which client needs)

RPC-XML style Architecture
RPC-XML Architecture works on a thumb rule called POST Client Request to URL End point. So typle this approach has a HTTP End Point, Passing a Envelop full of data in the form of SOAP having Web Method and Scoping information in XML format and Recieving similar Envelop from client having response data in XML format.

In reality, developing this kind of Request Envelop and Response Envelop is developers nightmare, but cleaverly taken care by some proxy tools.

No comments:

Post a Comment