IIS Performance

IIS Optimizing logging for Awstats & reduce logs size by over 50%!

High traffic sites can easily get daily logs over 100MB. It can be very beneficial to log only the information we actually use. We will require the minimum logging for decent Awstats reports. We will copy the recommended Apache LogFormat:
"%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %V"

For more details on the meaning of these values see: Apache Preferred Awstats Custom Log Formats.

FrontPage Server Extensions Performance

FP Server Extensions do not perform well with large site or large files. For large sites try to create independent FrontPage "child webs" or "sub webs".

It's very important to trim files created by FrontPage when they grow larger then a few megabytes, sometimes even a few 100s KBytes. For example, a guestbook over 8MB can easily max out the CPU for minutes, at each new guestbook entry.

Example of FrontPage "webbot" that create files:

  • Guestbook
  • Form "Save to" File

This is especially important nowadays since they are thousands of automated scripts looking for these guestbooks and forms to send SPAM information.

Basic IIS performance settings

Some of the key IIS registry setting that impact performance:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\InetInfo\Parameters
ObjectCacheTTL (DWORD): Amount of time in seconds, static cached objects stay in memory (without be referenced). Default 30.
This can easily be increased to a large value like 600 (10 minutes).

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\InetInfo\Parameters
LogFileBatchSize (DWORD): This specifies the batch size for writing log files. The server caches the last LogFileBatchSize bytes of data in memory buffers before it dumps the current buffer and moves onto the next buffer. Default 64*1024 (64KB).
If you got the memory you can at least double this value 131072 (128KB), triple 196608 (192KB) or more.