oreilly.comSafari Books Online.Conferences.


AddThis Social Bookmark Button

What's New in Windows Server 2003

by Shawn Wildermuth

They did it. I wasn't convinced that Microsoft would ever get it done, but they've finally released Windows Server 2003. Sure, they did a ninth-inning renaming of the operating system from Windows .NET Server to Windows Server 2003. But there are still many features that the .NET developer should be salivating over. In this article, I will count down the top ten features that you should know about.

10. Active Directory Application Mode

Though not officially part of Windows Server 2003, Active Directory Application Mode (ADAM) represents a better way for developers to use directory stores. In ADAM, you can install an Active Directory instance that is not tied to a domain controller. No longer are you required to intermingle the IT department's Active Directory instance with your application data. ADAM and Active Directory share most of their source code so that all of the old ADSI and System.DirectoryServices APIs work just as you would expect.

9. XML-Based IIS 6.0 Metabase

Gone are the days of having to use convoluted APIs to add virtual directories and sites to the IIS Metabase. The new IIS 6.0 Metabase is just an XML file. In addition, the new metabase can be set so that manual edits to the XML file are automatically reflected in the running instance of IIS 6.0.

8. MSMQ 3.0

After being able to play around with MSMQ for the past year in Windows XP, finally there's a Server OS that supports it. For the uninitiated, MSMQ 3.0 adds:

  • Support for multicast messages (one message to multiple locations).
  • Message triggers.
  • Message lookup without navigating through all messages.

7. BITS Server Extension for IIS 6.0

Background Intelligent Transfer Service (BITS) is an IIS server extension that allows you to write your own "Windows Update"-style background downloading of new content or product updates. BITS automatically resumes downloads as a connection comes and goes.

6. Windows System Resource Manager

Hidden beneath the covers of Windows Server 2003 is the Windows System Resource Manager (WSRM). The WSRM allows you to specify CPU and memory allocation policies for different applications. The purpose of the WSRM is to allow you to host multiple applications on a single server and limit how many server resources to which a single application is entitled.

5. Web Gardens

While it is easy to get "Web Gardens" confused with "Web Farms," the concept is similar. A Web Farm hosts a single web application on multiple machines, and a Web Garden allows multiple processes to service a single web application. Since there are multiple processes to handle requests for the web application, there should be reduced contention for OS resources.

4. IIS 6.0 Application Pools

In IIS 6.0, each web application belongs to an Application Pool. These pools are used to improve the health of each application, as well as the server itself. The pools each have four types of settings:

  • Recycling: Allows for the worker processes in the pool to be recycled, based on specific rules such as the length of time the process has been running, the number of requests the process has serviced, and the amount of memory the process has used, or simply based on specific times during the day.
  • Performance: Allows the worker processes to be shut down when the application is not receiving any requests and enables CPU throttling for the web application.
  • Health: Allows for health monitoring of worker processes. This includes pinging of worker processes to ensure health of the process and rapid shutoff of processes if multiple failures occur in a short amount of time, and allows specific time limits for startup and shutdown.
  • Identity: Allows all of the worker processes to be launched with specific identities, including Network Service or specific security accounts.

3. .NET Framework 1.1

If you have been keeping up with's articles, you should already know about the changes in the .NET Framework 1.1. More importantly, Windows Server 2003 comes pre-installed with the new version of the framework. No more explaining that your application needs the .NET runtime to be installed as well. Microsoft is treating the Framework like Win32 API before ... it's all in there.

2. Kernel Mode HTTP Driver

While IIS 6.0 provides quite a lot of new functionality to keep web sites functional in the worst of days, Microsoft went the extra step of moving the HTTP serving to a Kernel Mode Driver. What this means is that no matter how many processes in IIS 6.0 are brought down, the HTTP serving will continue. The http.sys driver serves and caches web pages right in the kernel, so not only is there improved isolation between application processes, the performance is markedly improved.

1. Security

Security has become the daily mantra of Microsoft these days, and this version of the OS proves it. After initial installation, absolutely nothing is turned on. In obvious contrast to previous incarnations of the OS, Windows Server 2003 has almost no surface area to lure hackers. Of course, one of the first things you will find yourself doing is turning on services (e.g., IIS, File Server, Print Services, DNS, etc.). Only what you specifically install will be enabled.

Shawn Wildermuth is the founder of and is the author of "Pragmatic ADO.NET" for Addison-Wesley.

Return to