3 ms·
Nginx is annoyingly complicated in a microservices environment. IP addresses of upstream servers change, and sometimes DNS doesn't resolve until another servic
by DanielDent 10y ago
Nginx is annoyingly complicated in a microservices environment.
IP addresses of upstream servers change, and sometimes DNS doesn't resolve until another service is brought up. Nginx does not work well in such an environment unless you (1) have ugly configuration hacks, (2) add OpenResty/LUA to your configuration, (3) add a watchdog process, or (4) buy their nginx Plus version and keep track of how many instances of nginx you have.
I want simple. If you need a webserver that can use DNS, Nginx is a lot of extra work.
- HorizonXP 10y agoI use it just fine in my Kubernetes deployment. Nginx resolves via DNS to the microservices I run, without having to do complicated configuration hacks. Would something like that work for you?
- DanielDent 10y agoDepending on how you are using it, Kubernetes may be hiding the problem for you via Kubernetes-managed load balancers. If the IP address of the microservice nginx depends on changes, in a standard nginx config, nginx will not be updated. A Kubernetes health check could also hide this issue.