Microservices Design - API Gateway Pattern

Bibek Shah
Jul 4 · 7 min read
Image for post
Image for post
Gateway to Ghorepani Poonhill, Nepal (source: Wikipedia)

Client to Microservices connections

Image for post
Image for post
Fig. Communication in Microservices

API Gateway

Image for post
Image for post
Fig. Microservice API Gateway

Functionalities of API Gateway:

Routing

Offloading

Backend for Frontend (BFF) pattern

Image for post
Image for post
Fig. Backend For Frontend (BFF) Pattern

How many BFFs do you need?

GraphQL and BFF

Notable API Gateways

Netflix API Gateway: Zuul

Image for post
Image for post
Fig. Zuul in Netflix Cloud Architecture (Image Source: https://netflixtechblog.com)

Amazon API Gateway

Image for post
Image for post
Fig. AWS API Gateway

Kong API Gateway

Image for post
Image for post
Fig. Kong API Gateway

Other API Gateways

Choosing the right API gateway

API Composition / Aggregation

API Gateway and Aggregation

Image for post
Image for post
Fig. Composite / Integration service in layered Microservices

Service Mesh and API Gateway

Image for post
Image for post
Fig Layered Microservices with Service Mesh

Considerations for API Gateway implementation:

References:

Dev Genius

Coding, Tutorials, News, UX, UI and much more related to development

Sign up for Best Stories

By Dev Genius

The best stories sent monthly to your email. Take a look

By signing up, you will create a Medium account if you don’t already have one. Review our Privacy Policy for more information about our privacy practices.

Check your inbox
Medium sent you an email at to complete your subscription.

Bibek Shah

Written by

Software Engineer

Dev Genius

Coding, Tutorials, News, UX, UI and much more related to development

Bibek Shah

Written by

Software Engineer

Dev Genius

Coding, Tutorials, News, UX, UI and much more related to development

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store