Abstract
In this article, we are going to talk about Application Gateway Interface styles and their evolutions. To communicate between two components, API is playing a vital role, so the engineering team often builds a bridge to connect two interfaces. Over a period, we not only expect connectivity, but we also need a bit more features such as high availability, scalability, and many more.
Mostly while creating an API we often go with the REST API approach, because that's what now as talking town and more resource availability in an internet portal, so it's easy to get help when we get into any trouble in mid of development. Here we will see what are other styles with some recommendations.
Types of API Architecture Styles,
- RPC
- SOAP
- REST
- GraphQL
- gRPC
|
RPC |
SOAP |
REST |
GraphQL |
gRPC |
Evolution Time |
90's |
90's |
2000 |
2015 |
2016 |
Usage |
High |
Limited |
High |
Small |
Growing |
Format |
XML,JSON,Steam,Buffer
|
XML |
XML,JSON,Raw Text, Html |
JSON |
Protocol buffer stream |
Transport Protocol |
TCP/UDP |
HTTP 1.1 |
HTTP 1.1 |
HTTP 1.1 |
HTTP 2.0 |
Recommended Scenario |
Internal system communication |
Payment Gateway Communication |
Public API and Internal API, micro-services |
Mobile APIs, micro-services |
Real-time streaming communication |
Maturity Level |
High |
High |
High |
Moderate |
Low |
Performance |
High |
Limited |
Moderate |
Moderate |
High |
I hope this page gives a high-level idea about each style of API and in the upcoming session, I would like to give in-depth detail about each style. lets connect in another article.