Question

I intend to write a small program to check IIS service connectivity and statistics through multiple connections in parallel. The IIS service is behind NLB service (and there 3 different service). So what I did so far is:

  1. Create an http handler that returns the name of the current IIS server.
  2. Create small HTTP client in WinForms application that sends a request to the NLB. In this client: a series of 100 parallel requests through WebClient object is being sent to the NLB service.

Results: When I send the requests to the NLB, always single IIS server responses. When I try to change the URI to the IIS servers specifically - every server responses on its own request. Now, I think that it means that the NLB doesn't do what it is supposed to do, since it navigates always to the same server (for every run, single server answers - it can change, but not for the run).

Is the check that I mention credible for checking NLB? If not, how can I check it through Winforms application?

Thanks in advance.

Was it helpful?

Solution

That is typical behaviour of NLB. It will try and give you the same host each time. You don't want it to pick a random server each time.

You will have much more useful information from examining the IIS Server logs, performance counters or in built monitoring routines.

OTHER TIPS

There is a Affinity setting in NLB manager.

Change this setting from single to None and check the request is going to different server each time.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top