Giocando con IIS6

Mi ritengo abbastanza esperto di IIS6 e della sua architettura e mi diverto abbastanza nell'usarlo e configurarlo a mio piacimento.

Una delle cose che davvero mi prende è l'integrazione con il worker process di ASP.NET. Insomma, ASP.NET funziona in modo migliore su IIS6, su cui la 1.1 è la versione per eccellenza. A dire il vero da un po' sto usando anche l'accoppiata 2.0/IIS6 e ne sono soddisfatto. Il punto di forza è l'architettura del web server, fatta apposta (e così sembra) per sfruttare alcune caratteristiche che ASP.NET ha introdotto, come il riciclaggio del processo in base a condizioni particolari (memoria occupata, risorse, etc).

Il bello è che queste stesse funzionalità sono utilizzabili da tutti i worker process (passatemi la licenza...) ospitati da IIS, quindi anche il motore di Classic ASP. Non è un caso se la velocità media di risposta di IIS 6 è superiore rispetto a quella di IIS 5, anche perchè c'è quel gioiellino chiamato ASP Template Cache. Le pagine ASP vengono in pratica staticizzate su disco e (a mo' di ASP.NET) sostituite quando vengono modificate. IIS è quindi in grado di recuperarle ed eseguirle in maniera molto più veloce.

Altra cose che mi piace è la possibilità di creare facilmente web garden, ovvero applicazioni che anzichè scalare su più server, scalano sull'hardware, occupando un numero definibile di processi. Ci sono implicazioni dal punto di vista architetturale delle nostre applicazioni che dovessero fare ampio uso della memoria, ma i benefici di questo sistema si sentono. D'altra parte ormai l'hardware è arrivato a livelli d'eccellenza.

Finisco questa mia divagazione con l'ultima caratteristica: la kernel cache. Una pagina ASP.NET in cache con IIS 6 è tenuta in un'area particolare, la stessa in cui gira il kernel (ed alcuni dei pezzi del'architettura di IIS, tra cui http.sys) e che rende la fruizione di queste pagine più veloce di una pagina statica su IIS 5, giacchè il cambio di contesto (da user a kernel) che viene fatto ogni volta, in casi come questi non è presente. Con un enorme vantaggio a livello di prestazioni.

E per finire, la compressione nativa: non è proprio potentissima, ma può aiutare a ridurre i problemi di banda.

Tutto questo per dire che da oggi ASPItalia.com ha IIS6 e mi sto divertendo come un matto a sistemare alcuni parametri. Sono anche curioso di vedere l'uptime del sito quale sarà, confido in un netto miglioramento (non che ora possa lamentarmi).

Nella stessa categoria

Commenti

Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.

© 1998-2008 - ASP.NET, Media Center e tecnologia - Il blog di Daniele Bochicchio

TagCloud
.NET Framework, .NET Framework 2.0, .NET Framework 3.0, .NET Framework 3.5, 10annidi, ADO.NET, AJAX, Architettura, ASP, ASP.NET, ASP.NET 2.0, ASP.NET 2.0 per tutti, ASP.NET 3.5, ASP.NET 3.5 per tutti, ASP.NET AJAX, ASP.NET MVC, ASPItalia.com, Cache, CSS, Custom Control, Database, Databinding, Datagrid, Deployment, HttpHandler, HttpModule, HttpRuntime, IIS, ISAPI, Javascript, LINQ, LINQ to SQL, LogParser, Master Pages, Media Center, Membership API, Microsoft Expression, Mono, MySQL, Object Oriented Programming, Off Topic, Office, Pattern, Profile API, Provider Model, Report, Roles API, Security, Silverlight, Silverlight 2.0, SQL Server, User Control, Visual Studio, Web Service, Windows CardSpace, Windows Client, Windows Live Services, Windows Mobile, Windows Presentation Foundation, Windows Server, Windows Vista, WinFS, XAML, XBox 360, XHTML, XML, XSLT
BLOG INFO
  • Post: 842
  • Commenti: 356
  • TrackBacks: 183
  • Feed blog e contenuti tecnici: RSS
  • Feed blog: RSS Atom OPML

MVP
CATEGORIE
I PIÙ LETTI DEL MESE
IN EVIDENZA