IIS6/worker processes/performance counters

M

Mark

Hi...

We're looking at moving an ASP app from IIS 5 to IIS 6. In general things
seem to be working okay, but there are some oddities around the edges. One
of those unanticipated changes has to do with the new process model and the
option to have more than one worker process per web instance.

We found that each worker process has its own Application() state and
anything your app puts there/uses gets a new copy for every worker process.
So depending on how much initialization your app does in Appication() that
expense could get paid over and over as IIS 6 cycles worker processes based
on idleness, load, memory use, etc.

The facet I still have a question about is performance counters. When you
have multiple worker processes for a web instance, are the usual performance
counters like Active Server Pages/Requests Total, Requests Queued, etc
aggregated across worker processes? How are they impacted by worker process
cycling? How about custom performance counters? I assume we'd probably have
to take extra effort to aggregate custom pcounters across worker processes -
is that right?

Are there any faqs on the new IIS 6 process model and/or implementing custom
pcounters for them?

Thanks
_mark
 
M

[MSFT]

Hi Mark,

AS I know, the usual performance counters, like Active Server
Pages/Requests Total, are counted across all worker processes, and will be
cleared/changed while worker process cycling. As for how to develop a
customized performance counter on IIS 6, I suggest you may post the
question on IIS development related group and you may be lucky enough to
find a person there who can answer your question.

Luke
 
M

Mark

Hi Luke...

Thanks for answering. This may be a nitpick, but ASP/Request Total I assume
would not be cleared by cycling worker processes, would it? I mean, if you
have a max of 4 or 5 processes, some are likely to be spun up or shut down
at various points but I'm assuming the following would hold:
1) you'd never go below 1 worker process

2) the total count would be in some shared memory location that would
persist and move upward, even if worker process #2 shuts down.

I guess Request Total isn't necessarily the most tricky example of how perf
counters change in the new process model. But then, maybe I'm just being
myopic. In the old IIS model, Low or Medium isolation made the concept of
ASP perf counters pretty straightforward, but High isolation would have
similar issues to the IIS 6 process model. Figuring out what each perf
counter means in a High isolation context is probably similar to IIS 6 and
the worker processes.

Thanks
_mark
 
M

[MSFT]

I think the recyling should be controled by IIS process and I agree with
you that IIS 6 mode is similar to High isolation in IIS 5.

Luke
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,997
Messages
2,570,241
Members
46,831
Latest member
RusselWill

Latest Threads

Top