Windows Application Server: A Competitive Solution
It is more convenient and costly effective for companies that require the development, the operation and the maintenance of very large software programs. Such programs, that are most of the times very complex and multi-user, are typically used for managing payrolls within the company or for expense report tracking. Using an application server simplifies the coder's work and reduces the amount of time required to build, deploy and maintain a large software application. Programmers do not have to waste valuable time to create custom infrastructures for every application developed. Instead, they create applications from building blocks provided by the Windows application server. When developing very large, complex business applications, most software developing companies make use of a three-tier model, a component-based architecture. A three-tier applications means that the application is split into three major modules. One of the modules handles the user interface for client interactions. Another tier deals with the application's business logic, while the data storage is dealt by the third tier. Using a multi-tier architecture presents many advantages, one of the most important benefits being the ability to reuse large parts of the code throughout the program, reducing overall development time and money (the application's queuing component can do what it is meant to do in many applications, not only a single software program). Microsoft does not provide a stand-alone "application server", but most of the features an application server offers are included in Windows Server 2003. Microsoft actually united the features that have been available for years in separate applications (such as other versions of its operating systems or the .NET Framework - Windows 2000 included an automatic transaction support -). Microsoft is not alone in this market, as it has some very powerful competition, such as IBM's WebSphere and BEA's WebLogic (however, IBM's Websphere is not a specialized application server, but it incorporates a large series of software products). Microsoft's solution has the main disadvantage that, although it is a very powerful and easy to use solution, is focused around the Windows operating system and the .NET Framework. Application server software developed by competing companies ais compatible with many operating systems, providing software developers with a consistent set of APIs on which to build (BEA developed its application server, WebLogic to be able to run on operating systems such as Solaric, HP-UX and many versions of Linux, in addition to Windows OSs. IBM's solution also runs on many Linux distributions, Solaris and other OS's, such as AIX, HP-UX, OS/2, OS/390 or OS/400). These applications servers are built around J2EE (Java 2 Enterprise Edition) to achieve this multiple platform compatibility. Microsoft included all the main features of a classic application server into its server aimed OS (Windows Server 2003) in order to create a competitive solution to Java-based application servers, such as IBM's WebSphere and BEA's WebLogic. These solutions can be installed and used indifferent of the operating system installed on the machine and that is where Microsoft sees Java based application servers as a threat to its range of products. |
