API gateways in microservices
When building a microservices architecture, we have a lot of choices, and we are mostly free to choose a technology stack that is best suited for implementing a microservice. Along with this, we always have an option to render different features for different devices by rolling out a different microservice that is specific to them. But when we do this, we also add complexity to the client, which now has to handle all these different scenarios.
So, let's first take a look at the challenges we may face on the client side, as shown in the following diagram:
The preceding diagram shows the challenges that we face, as shown in the following list:
- Handling different APIs: When every device has a specific microservice that provides the set of features that it requires, the client for that device needs to know about the API endpoints related to that specific service. This adds complexity because now the team that is responsible for handling the development of the clients...