IIS Overview

Description

An overview of the Alpha Anywhere Application Server for IIS.

Notes on Deprecated Features

Alpha Five Version 11 introduced changes that removed, deprecated, or added features for coding a web application. The Server Programming Changes for Version 11 document lists these changes. These changes were made so a web application can run under the stand-alone web application server and the IIS application server without needing to be modified. Review the linked document for changes you may need to make to your web application so that it will run under IIS. Here is a link to documentation for the Context object that is referred to in the Server Programming Changes for Version 11 document.

Key Concepts

Architecture 

IIS' architecture is very modular (you only need to install what you need to use) and very extensible (you can plug in various implementations including your own in order perform a certain task such as authentication). The Alpha Anywhere Application Server for IIS plugs into this architecture allowing a developer to take advantage of IIS' extensibility as the need arises. The Alpha Anywhere Application Server for IIS chooses reasonable defaults to get you up and running quickly.

Web Deployment 

Web deployment is the means by which a web site and/or web application is added, updated or removed on an IIS server. The tool used to do this is named Web Deploy. Web Deploy takes a deployment package and applies it to an IIS server. Web deployment is required to be installed on an IIS server to publish directly to an IIS server from the Alpha Anywhere Developer edition.

Configuration 

An IIS server, web site and web applications are configured through a configuration hierarchy. Settings for web applications are inherited from web sites which, in turn, are inherited from the server's settings. Settings may be overridden, added or removed at any step along the way. For instance the server has setting for a list of default pages set to "index.html" for when a request comes in without a specific page. A site can add "default.htm" to the list so that it will look for a page named either "index.html" or "default.htm". A web application can have it's default pages set to only "index.a5w" ignoring (removing) "index.html" and "default.htm". The configuration for a web application is stored in the web.config file located in the web application's folder. The configuration for a web site is stored in the web.config file located in the web site's root folder. The configuration for a server is stored in the applicationHost.config file in the IIS installation config folder.

Shared Configuration 

Shared configuration an IIS server setting that allow many IIS servers to all use the same configuration which is stored in a remote location such as a file share.

Web Server Management 

An IIS configuration is managed using Internet Information Services (IIS) Manager UI. IIS may also be managed through PowerShell scripts or the appcmd.exe command line tool. The IIS Manager UI allows you to manage IIS on the local machine or on remote machines. The Alpha Anywhere Application Server for IIS adds UI specific for it to the IIS Manager UI. A web application's configuration is generated at deployment time but may be modified using the IIS Manager UI. If changes are made to a deployed web application's configuration corresponding changes need to be made in web application's definition in Alpha Anywhere Developer edition because a new deployment will overwrite any changes made to the previously deployed web application's configuration.

Application Pools 

Application Pools are "units of organization and isolation" within IIS. Many web applications may run in a single application pool and they will share all the system resources allocated to and configuration of that application pool. When an application pool is started all of the applications in that pool become available and when an application pool is stopped all the applications in that pool become unavailable. Web sites/applications that need to be independently started and stopped or have different system resource requirements need to be in different application pools. By default Alpha Anywhere creates an application pool for each web application keeping it separate from all other web applications installed on an IIS server.

Web Farm (Load balancing) 

IIS load balances through the use of Web Farms. The Web Farm Framework is an IIS extension that you can add to your IIS server. Together with Web Deployment, Web Farms will keep web applications across all the machines in the web farm in sync.

Logging and Monitoring 

The Alpha Anywhere Application Server for IIS participates in IIS' Failed Request Tracing logging. There is more information available online for failed request tracing aside of the link that is provided. Errors or warning that may occur outside of failed request tracing such as initialization or licensing messages are written to the Windows event log with a source name "Alpha Anywhere V12 Application Server for IIS".

Known Issues

There are some known issues when using Alpha Anywhere Application Server for IIS. This view this list of known issues to see if any may affect your application.