Tuesday, January 15, 2008

On the way of Learning RESTful way

REST, which stands for Representational State Transfer is an architectural style of developing the web services. I first came across this term when I attended the Sriram Narayan's (a fellow thoughtworker) presentation. I was quite impressed with the concept and was planning to read about it in detail since long. When I started reading, I came across XML-RPC and SOAP which are other protocols used to communicate between two web services across network. As usual, I was not aware of them and searched to see exactly what they are. In short, this is what I found.

# XML-RPC : As it's name suggests, its a remote procedure call protocol which allows applications running on different machines (or different platforms) to communicate through remote procedure calls. It uses xml as message format and uses http as transport mechanism. The format of messages in XML_RPC is very simple and contains minimal data types. In fact, simplicity is the goal of XML-RPC.

# SOAP : SOAP stands for Simple Object access protocol which is a protocol for communicating across computer network using xml messages. It is successor of XML-RPC protocol.Its mostly used for communication between web services.
The advantage of SOAP is that it uses xml for communication which can communicate with different platforms and different applications.
However, as its uses xml, it can be slower as serialization, deserialization is required, which is a expensive operation. Also, the xml structure of message can be very complex and verbose. The other problem is that it uses http, which is a application protocol, as transport protocol.

Equipped with this basic knowledge, now I am in better position to read about REST..

No comments: