1

How different is the recent buzzword of API/APIfication different from having a SOA based architecture?

Apart from the technical difference of APIs being REST-based web services and SOA being SOAP based webservices, are there any other benefit or advantage of this new buzzword API/APIfication?

nbro
  • 12,226
  • 19
  • 85
  • 163
yathirigan
  • 4,579
  • 14
  • 55
  • 98
  • 1
    OK so the question you should be asking is "what is the difference between microservices and SOA", in which case you can find an answer here: http://stackoverflow.com/questions/25501098/difference-between-microservices-architecture-and-soa – tom redfern Sep 15 '15 at 07:40

2 Answers2

1

...APIs being rest based WebServices and SoA being SOAP based Webservices

This is probably the least accurate definition of both terms I have ever heard.

I think the question you are trying to ask is "What is the difference between REST and SOAP web services?"

In this case there. Are. Many. Answers.

But, i was trying to understand the recent Buzzword of APIfication of traditional/legacy Enterprise Apps

APIfication is meaningless. A google search of this term returns mixed results.

The concept seemed to be similar with SoA architecture style

API and SOA are unrelated concepts. Both terms have been around for years and their meaning has stayed fairly constant over time.

So, i was trying to clarify if i was missing anything

It's unlikely you're missing anything other than clarity about what exactly it is you want to ask.

tom redfern
  • 28,053
  • 12
  • 86
  • 116
  • thank you. i understand the basic diff between REST vs SOAP. But, i was trying to understand the recent Buzzword of APIfication of traditional/legacy Enterprise Apps. The concept seemed to be similar with SoA architecture style but, being referred as API/APIfication..etc. So, i was trying to clarify if i was missing anything about the new buzzword. – yathirigan Sep 14 '15 at 04:38
  • thanks for the more detailed update.. may be i was using uncommon terminology.. here is an article that talks about my question http://searchsoa.techtarget.com/answer/Microservices-architecture-101-What-the-heck-is-it >>At first glance, this may not sound any different than what SOA pundits promoted years ago< – yathirigan Sep 14 '15 at 18:45
  • OK so the question you should be asking is "what is the difference between microservices and SOA", in which case you can find an answer here: http://stackoverflow.com/questions/25501098/difference-between-microservices-architecture-and-soa – tom redfern Sep 15 '15 at 07:30
0

My understanding of SOA architecture:

  1. All code belongs to a service, regardless of what tier it runs in - whether it's UI, middle-tier or data access. It belongs to whichever service owns the data it operates on or displays.

  2. Microservices never ever call each other. Instead, their UI's are composed together at runtime, and business processes that cross services boundaries are "emergent" rather than being orchestrated at a high level. The only communication that crosses service boundaries consists of events, and not data.

  3. These events can be versioned, with newer versions extending older versions, so that the publisher can publish a new version of an event, while subscribers still receive the old version of the event (which decouples the services and prevents multiple services from having to be modified and deployed in lockstep.)

  4. The "IT/Ops" service composes UI components from multiple services together at runtime to create the front-end interface of an application.

Since an API implies coupling between the provider and the consumer, API calls are only ever made within a service, not across service boundaries.

pnschofield
  • 827
  • 6
  • 15
  • If APIs (such as REST/web services) are though of as horizontal slices, services (in SOA terms) can be though of as vertical slices of an application. – pnschofield Nov 07 '16 at 19:56
  • This talk by Udi Dahan really helped it to click for me: https://vimeo.com/5022174 – pnschofield Nov 07 '16 at 19:57