[1]https://www.nginx.com/blog/microservices-reference-architect...
[1]https://www.nginx.com/blog/microservices-reference-architect...
https://kubernetes.github.io/ingress-nginx/how-it-works/#whe...
The NGINX ingress controller goes to some lengths to avoid reloads because it recognizes the hit from reloads. In Ambassador-land, we use Envoy's xDS APIs to avoid this problem. Not clear what the HAProxy ingress controller does.
One thing I wanted to point out is that the HAProxy Ingress Controller actually has over 25 [2] configuration options at the time of publishing, not 8 as mentioned.
While we have identified a few on our own we'd love to work with you further to identify any missing configuration directives that can help perform some more accurate benchmarks using the official HAProxy Ingress Controller.
disclosure: I work at HAProxy Technologies
[1] https://www.haproxy.com/blog/dynamic-configuration-haproxy-r...
[2] https://github.com/haproxytech/kubernetes-ingress/tree/maste...
[3] https://github.com/jcmoraisjr/haproxy-ingress#dynamic-scalin...
I updated the article to clarify that there were 8 configuration options at the time of testing (we started this effort awhile ago) and now there are 25.
We'd definitely like to rerun the tests with the official controller to use the Runtime API.