05 November 2010

Monitoring & Troubleshooting ASP.NET Applications on IIS

Toolbox for the IIS server

  1. net start
  2. sc query
  3. tasklist /svc
  4. netstat –ano
  5. wfetch/ wget/ curl
  6. procmon/ filemon/ regmon
  7. eventvwr
  8. mmc.exe (reliability & performance monitoring)
    1. process time & %
    2. .NET CLR
    3. ASP.NET
      1. Requests Wait Time
      2. Requests Current
      3. Requests Queued
      4. Requests Rejected

Toolbox for the browser machine

  1. ping
  2. telnet/ portcheck
  3. wfetch/ wget/ curl

When should application pools be turned into web gardens?

Web gardens can only be used if the application doesn’t use in-process session variables but rather out-of-process ones (e.g. session state service or database session state). Drivers to using web gardens are:
  1. Application makes long-running synchronous requests
  2. Application is low in availability and crashes often
  3. Application creates high CPU load on work process

Non-IIS Settings & Bottlenecks

  1. Optimum paging file size setting:
    1. 1.5x the RAM for 32-bit OS
    2. system-managed for 64-bit OS
  2. Disk queue length should always average less than 2
  3. Network utilisation should be less than 50%

No comments: