There is one feature coming with IIS 7 (http.sys, as such it is more an OS feature) that I have been waiting for a long time: being able to see what's in the kernel cache! The key to this new supercool feature is the netsh command:
C:\Users\Administrator>netsh http show cachestate ?
Usage: show cachestate [[url=]<string>]
Parameters:
Tag Value
url - Fully qualified URL. If unspecified, implies all
URLs. The URL could also be a prefix to registered URLs
Remarks: This command lists all resources and their associated properties
that are cached in HTTP response cache or displays a single
resource and its associated properties.
Examples:
show cachestate url=http://www.myhost.com:80/myresource
show cachestate
Some information can be obtained in the article New Networking Features in Windows Server "Longhorn" and Windows Vista (you can even flush the cache), and here is how it works if you browse to the default Web site of IIS 7:
C:\Users\Administrator>netsh http show cachestate http://localhost
Snapshot of HTTP response cache:
--------------------------------
URL: http://localhost:80/pagerror.gif
Status code: 200
HTTP verb: GET
Cache policy type: User invalidates
Creation time: 2006.3.21:23.30.16:0
Request queue name: DefaultAppPool
Headers length: 187
Content length: 2806
Hit count: 1
Force disconnect after serving: FALSE
URL: http://localhost:80/iisstart.htm
Status code: 200
HTTP verb: GET
Cache policy type: User invalidates
Creation time: 2006.3.21:23.30.14:0
Request queue name: DefaultAppPool
Headers length: 233
Content length: 774
Hit count: 1
Force disconnect after serving: FALSE
Tracking caching behavior will be so much easier.