I've recently started creating an application using the microservice architecture, as the app evolves the line that divides the concepts of a reverse proxy and an API Gateway fades for me:
I want to use nginx to handle load balancing & reverse proxying, but I also want to use an API Gateway so the clients don't know every microservice in the architecture, (among other things).
So now I'm stuck with the chicken & the egg issue, I've been thinking about what comes first :
- Request > API Gateway > nginx.
- Request > nginx > API Gateway.
I tend to think its number 1 but in that case, nginx wouldn't be the entry point of the application... (is that a problem?)