Windows 2012 Server Web Servers is our next topic of our continued series about tuning Windows 2012 Server performance. This will be a multipart series describing optimizing the Windows 2012 Web Server role. We’ll cover the following topics:
- Selecting Hardware and Operating System practices
- Tuning IIS 8.0, Kernel Mode Settings
- Tuning IIS 8.0, User Mode Settings
- Tuning IIS 8.0, Other settings such as NTFS and Networking
Let’s start looking at the hardware selection that is appropriate for Windows 2012 Web Servers.
You want to select hardware that can satisfy the expected web load, considering average load, peak load, capacity, growth plans, and response times. Hardware bottlenecks limit the effectiveness of software tuning.
Our earlier article Hardware Selection we provided hardware recommendations to avoid the following performance constraints:
- Slow CPUs offer limited processing power for ASP, ASP.NET, and SSL scenarios.
- A small L2 processor cache might adversely affect performance.
- A limited amount of memory affects the number of sites that can be hosted, how many dynamic content scripts (such as ASP.NET) can be stored, and the number of application pools or worker processes.
- Networking becomes a bottleneck because of an inefficient network adapter.
- The file system becomes a bottleneck because of an inefficient disk subsystem or storage adapter.
If you missed that article, or need to refresh your memory, we recommend read before deciding on what hardware to get for your Web Server.
Operating System Practices
If possible, perform a clean installation of the operating system software. Upgrading the software can leave outdated, unwanted, or suboptimal registry settings and previously installed services and applications that consume resources if they are started automatically. If another operating system is installed and you must keep it, you should install the new operating system on a different partition. Otherwise, the new installation overwrites the settings under Program Files\Common Files.
To reduce disk access interference, place the system page file, operating system, web data, ASP template cache, and the Internet Information Services (IIS) log on separate physical disks if possible.
To reduce contention for system resources, install SQL Server and IIS on different servers if possible.
Avoid installing nonessential services and applications. In some cases, it might be worthwhile to disable services that are not required on a system.
In our next article we’ll get to the details of tuning IIS 8.0 and discuss Kernel Mode parameters.