12
Configuring Configuring Applications Applications MacDonald Ch. 9 MacDonald Ch. 9 MIS 424 Professor Sandvig

Configuring Applications MacDonald Ch. 9 MIS 424 MIS 424 Professor Sandvig Professor Sandvig

  • View
    221

  • Download
    0

Embed Size (px)

Citation preview

Configuring ApplicationsConfiguring ApplicationsMacDonald Ch. 9MacDonald Ch. 9

MIS 424

Professor Sandvig

TodayToday

1.1. Why Applications?Why Applications?2.2. IISIIS

Role in handing a requestRole in handing a request

3.3. .NET.NET ApplicationsApplications Application Object Application Object Global.asaxGlobal.asax

4.4. Configuration filesConfiguration files Machine.configMachine.config Web.ConfigWeb.Config

Why Applications?Why Applications?

Dark ages (pre-2003)Dark ages (pre-2003) Server crashes not unusualServer crashes not unusual

Single failure bring down whole systemSingle failure bring down whole system Worse yet:Worse yet:

Memory leaksMemory leaks Cause IIS hangCause IIS hang Stop serving pagesStop serving pages

Required manual interventionRequired manual intervention(reboot)(reboot)

Why ApplicationsWhy Applications

Today (Windows Server 2003 & later)Today (Windows Server 2003 & later) Applications still crashApplications still crash

Applications are compartmentalizedApplications are compartmentalized

OS handles gracefullyOS handles gracefully System rarely affectedSystem rarely affected OS monitors application healthOS monitors application health

Recycles unhealthy processesRecycles unhealthy processes Result: system stable & reliableResult: system stable & reliable

IIS Overview IIS Overview

http://theserverside.net/articles/showarticle.tss?id=IIS_ASP

IIS ApplicationsIIS Applications

Folders may be configured as “Applications”Folders may be configured as “Applications” IIS configuration interfaceIIS configuration interface Each application is assigned to an Application PoolEach application is assigned to an Application Pool

Each application pool has a unique Windows processEach application pool has a unique Windows process Specify error handling, timeouts, etc. for each applicationSpecify error handling, timeouts, etc. for each application

Benefit:Benefit: Compartmentalize applicationsCompartmentalize applications Reduces dependenciesReduces dependencies

Improves reliabilityImproves reliability Allows application specific settingsAllows application specific settings

Error handling, log files, filters, headers, timeouts…Error handling, log files, filters, headers, timeouts… 100’s of settings100’s of settings

Applications SettingsApplications Settings

Configuration settings:Configuration settings: Web.configWeb.config

Application level settingsApplication level settings

Located in root folderLocated in root folder Machine.configMachine.config

Settings common to all applicationsSettings common to all applications

Application event handlersApplication event handlers Global.asax fileGlobal.asax file

Located in root folderLocated in root folder

ASP.NET ConfigurationASP.NET Configuration

.config files.config files Hierarchical configurationHierarchical configuration Similar to CSS Similar to CSS

InheritanceInheritanceChild has precedence over parentChild has precedence over parent

Machine.configMachine.config Rarely need to modifyRarely need to modify

Web.ConfigWeb.Config

XML fileXML file Case sensitiveCase sensitive Camel casingCamel casing

Configure:Configure: Application settingsApplication settings Error handlingError handling TimeoutsTimeouts Sessions…etc. etc.Sessions…etc. etc. AuthenticationAuthentication documentation

SecuritySecurity .config files not served.config files not served

Global.asaxGlobal.asax

Handles application & session Handles application & session eventsevents 15+ events 15+ events Application_startApplication_start Application_errorApplication_error Session_startSession_start

Located in root folder of applicationLocated in root folder of application

Triggered each page requestTriggered each page request

OptionalOptional

Global.asaxGlobal.asax

Example:Example: Create new application on serverCreate new application on server web.config: sourceweb.config: source global.asax: sourceglobal.asax: source TestPage.aspx: source, outputTestPage.aspx: source, output

SummarySummary

Configuration Objectives:Configuration Objectives: FlexibilityFlexibility SecuritySecurity ReliabilityReliability ConvenienceConvenience

IIS IIS Handles requestsHandles requests

ApplicationApplication Application objectApplication object Events: global.asaxEvents: global.asax

ConfigurationConfiguration Machine.configMachine.config Web.configWeb.config