When/how REST replaced SOAP [closed]

2019-04-15 16:19发布

问题:

I am currently writing my thesis about IT technologies etc. etc. and I have one chapter where i compare REST and SOAP, but I can not find how and when (i mean some king of events in the past) REST started (mainly in Web) to replace SOAP as technology of web services.

Could you help me with this issue ? ;)


Thank you for this important information, but i mean something else.

I would like to show you a graph in Google Insights for Search Tool :

Google Insights

As you can see in 2008 there was some king of intersection number of keywords searche for rest api and soap api. So, i would like to rely on some sources (of coures I do not have them) or events/facts why this intersection may occured... event in the recent past.

Do you get my point of view ? I know that could be quite unique approach to the topic, but i would like to explain of this soap and rest swap.

EDIT

Does anyone have any idea? I know that is different approach to the topic of soap and rest apis but maybe someone knows how 'bite' the topic ;)

回答1:

The term Representational state transfer (REST) was introduced in 2000 by Roy Fielding in his doctoral dissertation. REST described a web architecture that was not specific to web API's, but has become very popular now as a method for developing web API's. SOAP became a W3C Recommendation in June of 2003. So technically REST was defined before SOAP, but SOAP was very popular method for some time for developing web services and in the beginning more popular than REST. But then developers found that SOAP was bloated and overly complex for developing web services/API's and that REST served their needs just fine. The simplicity of REST seems to make it more popular and the fact that it adheres to basic HTTP principles makes it much more portable across heterogeneous platforms. So there is probably not a certain milestone or event in history that caused this transition from SOAP to REST. It was just a gradual transition to what worked best for developers needs.

Clarification on SOAP history

SOAP version 1.0 was actually introduced by Microsoft in December of 1999, so the two technologies are close on when they were defined. But it was not given to the W3C to become a standard until May of of 2000 and was not made a Recommendation until 2003. I would argue that until it became a general standard it could not be considered by the whole development community as something viable for developing web services for a heterogeneous environment, which was one of the big promises of web services and SOA. Until that time it was just something that could be used on Microsoft platforms.

Update Based on Comments on API Trends

The Google Insights graph shown by @GarciaPL is very interesting and I think I understand what he is trying to show in his thesis. But I would be careful with this data in drawing strong conclusions. This same Google Insights search was shown in the blog post "REST in peace, SOAP". Probably what is more concrete in this blog post is the graph showing out of 2,000 API's the trend from 2008 to 2010 was to move to REST. The original source of this information is here. This does show a trend towards REST for publicly exposed API's. Is the thesis specifically on the use of publicly exposed API's or is it on web service development in general? If it is web services in general I am less certain. For developers on Microsoft platforms developing internal projects the term used today is not SOAP, it is Windows Communication Foundation (WCF). Although SOAP is under the hood there is little need to discuss the plumbing as WCF hides a lot of the internals. If I do a Google Insights search on "rest web service", "soap web service", and "wcf web service" you get much different results, showing them actually converging. Or if you do a search on "restful service", "soap service", and "wcf service" it actually shows WCF taking over in 2008 with a gradual uptick for REST.

For API's REST makes sense because they are portable, simple to use, scalable, and easy to integrate with. For development of web services in general I am not so sure. I think WCF is still very popular with Microsoft developers and it fits well with certain types of projects. It is just a matter of picking the right tool for the job. I will reiterate what I said before, I do not think their is a significant historical event that caused the transition to RESTful API's. I think it was just developers learning what the right tool for the job was.



回答2:

The best place for you is book from Jim Webber "REST in Practice: Hypermedia and Systems Architecture"

http://www.amazon.com/REST-Practice-Hypermedia-Systems-Architecture/dp/0596805829

In book is a special chapter for that - Chapter 11 "The Web and WS-*".

When you are writting thesis about REST than this book is must have for you.