Apache 2.2.4 Proxy Balancer extrem langsam, wenn ein Balancemember ausfällt

Apache 2.2.4 Proxy Balancer extrem langsam, wenn ein Balancemember ausfällt

Ich verwende Apache 2.2.4 als Reverse-Proxy-Server in meiner DMZ. Der Proxy Balancer scheint einwandfrei zu funktionieren, wenn die beiden BalancerMember-Server aktiv sind. Wenn ich jedoch einen herunterfahre, dauert es bei jedem Laden einer Seite etwa 30 bis 45 Sekunden, bis irgendetwas auf meiner Site geladen wird. Hier ist meine Konfiguration:

ServerName mywebsite.com
ProxyRequests Off
<Proxy *>
Order deny, allow
Allow from all
</Proxy>

<Proxy balancer://mycluster>
BalancerMember http://10.10.10.10:80/outside loadfactor=1 retry=60
BalancerMember http://10.10.10.11:80/outside loadfactor=1 retry=60
</Proxy>

ProxyPass /outside balancer://mycluster/
ProxyPassReverse /outside balancer://mycluster/

ProxyPass /balancer-manager !

<Location /balancer-manager>
SetHandler balancer-manager
</Location>

Der Server fungiert als Reverse-Proxy für dahinterliegende REST-Dienste. Wenn ich die Webanwendung lade, ruft sie die REST-Dienste mehrmals auf. Ich weiß also nicht, ob das auch die Verlangsamung verursachen könnte, da der Proxy mit vielen Anfragen gleichzeitig konfrontiert wird.

Antwort1

Stellen Sie a ProxyTimeoutauf nur ein paar Sekunden ein. Was passiert, ist, dass es lange Zeit versucht, Verbindungen zum ausgefallenen Backend herzustellen, ohne dass eine Zeitüberschreitung auftritt.

Wenn Sie etwas wie einstellen, ProxyTimeout 3wird die Verbindung schneller unterbrochen. Ihre retry=60Einstellung führt dann dazu, dass der ausgefallene Server in der nächsten Minute nicht mehr verwendet wird.

verwandte Informationen