Why do you need an API Gateway
The microservice architecture have encouraged the splitting of large scale applications into smaller services that are good at performing single task to take advantage of the following benefits: Independent service deployments Faster release cycles Easier maintenance Granular scalability However, this microservices don't come without its own set of problems. Splitting of services meant that APIs needed to be grouped into smaller sets (Bounded contexts) and this offloaded problems to client-side and API applications. Client-side Issues Leaking domain knowledge Since client-side applications now have to deal with multiple APIs, this means that domain knowledge is now scattered across consumers thus, making them harder to maintain. Multiple attack points The number of APIs exposed publicly is relative to the increase of potential attack points of an application. Requires to purchase multiple domain names and SSLs In order to exp...