Come gestire e configurare i pool di applicazioni in IIS

Un pool di applicazioni funge da contenitore per le applicazioni in IIS. È una raccolta di uno o più URL che possono essere serviti da un processo di lavoro e fornisce isolamento: le applicazioni eseguite su un pool di applicazioni non sono in alcun modo influenzate da altre applicazioni eseguite su pool di applicazioni diversi. Questo livello di isolamento fornisce il limite di protezione necessario e rende l'applicazione sicura. Una buona conoscenza di cosa sono i pool di applicazioni e come funzionano è essenziale per configurare IIS nel modo corretto.

Un processo di lavoro nel contesto di IIS è uno che può eseguire applicazioni Web ed è responsabile della gestione delle richieste specifiche per un particolare pool di applicazioni. Notare che un pool di applicazioni che contiene più processi di lavoro è noto come Web Garden e che un pool di applicazioni può avere una o più applicazioni, ciascuna delle quali condivide il processo di lavoro.

Microsoft afferma: "Un pool di applicazioni di Internet Information Services (IIS) è un raggruppamento di URL instradati a uno o più processi di lavoro. Poiché i pool di applicazioni definiscono un insieme di applicazioni Web che condividono uno o più processi di lavoro, forniscono un modo conveniente per amministrare una serie di siti Web e applicazioni e i relativi processi di lavoro. "

È possibile avere più applicazioni che risiedono in un pool di applicazioni e ciascuna di esse condivide il processo di lavoro. Puoi fare in modo che più applicazioni condividano lo stesso processo di lavoro oppure un processo di lavoro per applicazione. Avere più applicazioni che condividono lo stesso processo di lavoro ha vantaggi e svantaggi. Quando ogni applicazione viene eseguita sul proprio processo di lavoro, il fallimento di un'applicazione non influisce sull'altra. Tuttavia, se le tue applicazioni condividono lo stesso processo di lavoro, le modifiche alla configurazione sono semplici. Il principale svantaggio di questo approccio è che se il processo di lavoro è inattivo, tutte le applicazioni andrebbero in crash. Inoltre, tutte le applicazioni che sfruttano lo stesso processo di lavoro condividono lo stesso profilo di sicurezza.

Creazione e configurazione di un pool di applicazioni

Per creare un pool di applicazioni in IIS, aprire Gestione IIS, selezionare il riquadro delle funzionalità "Pool di applicazioni", fare clic con il pulsante destro del mouse su di esso e quindi fare clic su "Aggiungi pool di applicazioni ...". In alternativa, puoi anche creare un pool di applicazioni usando PowerShell. Discuterò su come farlo in uno dei miei prossimi post qui.

Sono disponibili due modalità pipeline in IIS 7 e versioni successive: modalità classica e modalità integrata. Nella modalità classica, IIS funziona con estensioni ISAPI e filtri ISAPI direttamente e i modelli di elaborazione delle richieste IIS e ASP.Net sono separati. La modalità Pipeline classica funziona in modo simile a IIS 6.0. Al contrario, nella modalità integrata, i modelli di elaborazione delle richieste sia di IIS che di ASP.Net sono integrati in un modello di processo unificato. In questa modalità è possibile sfruttare l'architettura di elaborazione delle richieste di IIS e ASP.Net. Questa pipeline di elaborazione unificata è esposta sia ai componenti nativi che a quelli gestiti. In sostanza, nella modalità integrata, IIS e ASP.Net sono strettamente accoppiati tra loro.

Quando esplori l'opzione delle impostazioni avanzate di un pool di applicazioni, troverai molte opzioni. È possibile specificare la versione di .Net CLR che si desidera utilizzare. È inoltre possibile abilitare le applicazioni a 32 bit utilizzando l'opzione "Abilita applicazioni a 32 bit". L'opzione "Modalità pipeline gestita" abilita la compatibilità con le versioni precedenti. È possibile impostare la lunghezza della coda utilizzando l'opzione "Lunghezza coda". Le opzioni "Limit", "Limit Action" e "Limit Interval" consentono di specificare le impostazioni di limitazione. L'opzione "Identità" viene utilizzata per specificare l'utente che il pool di applicazioni avrebbe impersonato. Con IIS 7, è possibile eseguire il pool di applicazioni con l'account "ApplicationPoolIdentity". Questa è l'opzione consigliata sebbene sia possibile eseguire il pool di applicazioni anche con un utente specifico 'anche l'account di s.