tags:

views:

63

answers:

3

Hi,

We have enabled the wildcard mapping for an existing classic ASP site to handle through aspnet_isapi.dll. Ever since then, the performance of the site has dropped? Does the .asp files get compiled before it served by IIS? Any help is greatly appreciated

Jyothish George

A: 

Ever since then, the performance of the site has dropped?

Häh? You did that on your server. You should KNOW whether the performance dropped or not. Afte rall, you are the guy with access to your own servers logfiles and performance counters.

Does the .asp files get compiled before it served by IIS?

Since ASp is not a language to start with, it is not compiled. The language in question (possibly / likely VBScript) is handled by the Windows Active Scripting Host... and for the major languages (you can have various)... this is not compiled. I could be, but I know of not a single compiled language.

What server version are you using?

TomTom
A: 

Enabling wildcard mapping will PUSH all files even .gifs, .css, .jpgs, .js etc through the aspnet_isapi.dll. This is probably where your degradation in performance is being seen.

You may want to consider moving all static files into a sub directory that does not have wildcard mapping enabled.

Rippo
A: 

I was the program manager for some parts of ASP on IIS4 and IIS5, so I know a couple of things about this stuff!!

Yes, you can have a perf impact becuase you're telling IIS to route more file request through an ISAPI. When IIS gets a request it has two options - bypass all intermediate code and access the file directly from disk and serve to the user. This is very very fast and allows for caching. The second option is to pass it to some code (an ISAPI) for processing and then potentially serve the result. This is a much slower code path. Adding wildcard mapping means more request will go thru the ISAPI path. Hence a potential perf drop.

The best action is to disable wildcard mapping and measure perf; then turn it on and re-measure perf. If there is a perf drop consider limiting which files are mapped. For example, mapping foo*.bar is probably not going to lead to much perf degradation; but .b most certainly will.

Hope that helps!

Michael Howard-MSFT
In this setup does the ASP output caches like asp.net after the first request? Any idea
Jyothish