> As far as I see, even without the health monitor, API requests are retried(?).
Now I know what's going on. Without the health monitor, haproxy is not aware of the backend failures but retrying the connection (wredis: redispatches - warning) to the backends all the time thanks to "option redispatch" in haproxy.cfg.
So the backend failure is not obvious from an API user point of view which is good. So having the health monitor on top is not must-have but still nice-to-have to manage the backend service status properly instead of retrying always including the failed backend.
> As far as I see, even without the health monitor, API requests are retried(?).
Now I know what's going on. Without the health monitor, haproxy is not aware of the backend failures but retrying the connection (wredis: redispatches - warning) to the backends all the time thanks to "option redispatch" in haproxy.cfg.
====
defaults
log global
retries 3
option redispatch
option splice-request
option splice-response
option http-keep-alive
====
So the backend failure is not obvious from an API user point of view which is good. So having the health monitor on top is not must-have but still nice-to-have to manage the backend service status properly instead of retrying always including the failed backend.