Home » IIS » Find out if the kernel-mode and user-mode caching are working

Find out if the kernel-mode and user-mode caching are working

After enabling output caching (kernel-mode and user-mode) in IIS, you may want to make sure it works as expected. Here are what you can do to confirm the caching status in the server:

Kernel-mode cache

  • If the command netsh http show cachestate returns “There were no cache entries corresponding to the provided URL”, it means there is no data in the kernel-mode cache
  • This can be confirmed by checking “Kernel: Current URIs Cached” performance counter as well. If it shows 0, it means the kernel-mode cache is empty
  • Failed Request Tracing (FREB) logs show if kernel-mode caching was used for a request (HTTPSYS_CACHEABLE event)

Note: Even if you enable kernel-mode cache, you may see that there is no cache stored. There are certain situations in which the kernel-mode caching cannot be used (Reference)

User-mode cache

  • There is no equivalent of netsh http show cachestate command to check user-mode cache
  • However, the performance counter “Current URIs Cached” shows how many URIs are cached in the user-mode
  • Resetting IIS or recycling application pool clears the user-mode cache
IIS Manager window to set up kernel-mode and user-mode caching

A few useful pages to learn more about caching:

Ned Sahin

Blogger for 20 years. Former Microsoft Engineer. Author of six books. I love creating helpful content and sharing with the world. Reach me out for any questions or feedback.
Categories IIS

Leave a Comment