0

I am using mod_proxy_balancer to load balance two back-end IIS servers. When monitoring the balancer-manager gui, I noticed that occasionally apache will stop sending traffic to one of the members. However, there are no errors present in the logs, and nothing to indicate that the server is unavailable. I have tried various lbmethods (bytraffic, bybusyness) and see the same result. I need to determine why traffic stops going to a member that is seemingly in good health and not returning errors. This generally happens under heavy load, which results in performance issues as one server is handling all requests.

Relevant config:

<Proxy balancer://cluster1>
    BalancerMember http://iis1:80 route=2 timeout=45 keepAlive=On
    BalancerMember http://iis2:80 route=1 timeout=45 keepAlive=On
    ProxySet stickysession=ROUTEID
</Proxy>
jwaust
  • 1
  • 1
  • Put your `LogLevel debug` and restart your test. One member must not be responding fast enough under load. Also verify here https://httpd.apache.org/docs/2.4/mod/mod_proxy.html if you really need `keepAlive`. Most do not. Then monitor your IIS servers to see if they are responsing fast enough, have enough resources and available connections, ... – Nic3500 Oct 17 '18 at 17:01
  • Thanks for the tip, I will try this tomorrow. Of note, when this scenario occurs, load on the IIS server that stops getting traffic is less than 10% total CPU, 40% memory, and network traffic is negligible. – jwaust Oct 17 '18 at 19:45
  • ok. I mentionned it because I faced something similar where the Tomcat servers in the backend were barely doing anything, but that was because they were configured way to small to respond. They only had 20 threads, the http had hundreds configured. – Nic3500 Oct 18 '18 at 11:48

1 Answers1

0

Figured this out - it's because we are using sticky sessions on both our hardware load balancer and apache balancer configs. So when we run a load test using jMeter, all of the traffic goes to one server. I hope this helps.

jwaust
  • 1
  • 1