Regarding the status of the backendservers - I use monitoring with health checks for every backend server anyway.
That are the reasons I chose nginx as reverse proxy recently.
Regarding the status of the backendservers - I use monitoring with health checks for every backend server anyway.
That are the reasons I chose nginx as reverse proxy recently.
- Create 1 process per core and pin to a core.
- In extreme cases, pin the NIC interrupt to a dedicated core. (If you have multiple NIC, one dedicated core per NIC).
HAProxy lets you do that very easily. That's why it's configured the way it's configured, because it's the options you need to make a high performance load balancer.
Shared memory is not necessarily and would kill the performances dramatically. The "inconsistencies" you might have heard about mean that the stats in the stats page are approximate, nothing important.
I'm looking at moving to something a bit more application aware now, such as Traefik, which works better in my workflow anyway.
Will say though - HAProxy has been rock solid for me, and was a million times easier to configure and manage than F5 LTM for our use case.