What does API gateway do?

 

The diagram below shows the detail.

 

Step 1 – The client sends an HTTP request to the API gateway.

 

Step 2 – The API gateway parses and validates the attributes in the HTTP request.

 

Step 3 – The API gateway performs allow-list/deny-list checks.

 

Step 4 – The API gateway talks to an identity provider for authentication and authorization.

 

Step 5 – The rate limiting rules are applied to the request. If it is over the limit, the request is rejected.

 

Steps 6 and 7 – Now that the request has passed basic checks, the API gateway finds the relevant service to route to by path matching.

 

Step 8 – The API gateway transforms the request into the appropriate protocol and sends it to backend microservices.

 

Steps 9-12: The API gateway can handle errors properly, and deals with faults if the error takes a longer time to recover (circuit break). It can also leverage ELK (Elastic-Logstash-Kibana) stack for logging and monitoring. We sometimes cache data in the API gateway.

 

Over to you: 1) What’s the difference between a load balancer and an API gateway?

2) Do we need to use different API gateways for PC, mobile and browser separately?

Subscribe to our weekly newsletter to get a Free System Design PDF (158 pages): https://bit.ly/3KCnWXq

 

Alex Xu

https://www.linkedin.com/feed/update/urn:li:activity:7178775881576820737

By Juri Pebrianto

IT and software developer From 2014, I focus on Backend Developers with the longest experience with the PHP (Web) programming language, as I said above, I open myself up to new technologies about programming languages, databases and everything related to programming or software development. I have a new experience for React-Js, React-Native, Go-Lang, by the way, this website juripebrianto.my.id is made with React-Js technology as the frontend and Go-Lang as the API and CMS and uses MongoDB as the database.