M
Morgan Cheng
This question may look silly.
We have a cluster of Frontend ASP.NET Web Service calls other cluster
of other ASP.NET Web Services. There is a hardware F5 BigIP load
balancer between these two clusters. The topology is like below.
Frontend Server1 --\ /--Backend
Server 1
\ /
Frontend Server2 --------- Load Balancer ----------- Backend Server 2
/ \
Frontend Server3 --/ \ -- Backend
Server 3
The LB is now configured as "sticky connection". That is, if Frontend
Server 1 request for the first time, it will locate one Backend
Server, say Server 2 to respond. And, for the next configurable time
span, all requests from Frontend Server 1 will be directed to Backend
Server 2. Everything is fine in such config.
Now, Operation team wants to reconfigure LB to disable sticky
connection. LB will randomly select Backend server for each request
from Frontend. Then, Frontend servers get a lot of
ThreadAbortException. The thread abort exception is due to Webservice
invocation to backend is hanged. And IIS6 abort one thread if it
doesn't complete one request in 90 seconds.
This looks tricky. It seems that ASP.NEThas some problem to
communicate with BigIP.
The platform are Win 2k3 and ASP.NET is still in 1.1(what a pity.
Does anyone have similar experience with ASP.NET load balancing?
or any idea to solve this issue?
Thanks.
We have a cluster of Frontend ASP.NET Web Service calls other cluster
of other ASP.NET Web Services. There is a hardware F5 BigIP load
balancer between these two clusters. The topology is like below.
Frontend Server1 --\ /--Backend
Server 1
\ /
Frontend Server2 --------- Load Balancer ----------- Backend Server 2
/ \
Frontend Server3 --/ \ -- Backend
Server 3
The LB is now configured as "sticky connection". That is, if Frontend
Server 1 request for the first time, it will locate one Backend
Server, say Server 2 to respond. And, for the next configurable time
span, all requests from Frontend Server 1 will be directed to Backend
Server 2. Everything is fine in such config.
Now, Operation team wants to reconfigure LB to disable sticky
connection. LB will randomly select Backend server for each request
from Frontend. Then, Frontend servers get a lot of
ThreadAbortException. The thread abort exception is due to Webservice
invocation to backend is hanged. And IIS6 abort one thread if it
doesn't complete one request in 90 seconds.
This looks tricky. It seems that ASP.NEThas some problem to
communicate with BigIP.
The platform are Win 2k3 and ASP.NET is still in 1.1(what a pity.
Does anyone have similar experience with ASP.NET load balancing?
or any idea to solve this issue?
Thanks.