Lorenzo Pascucci
a- a+

Introduzione (I)

Web statico e Web interattivo 
In principio il Web era una semplice collezione di pagineHTML statiche collegate tra di loro tramite linkipertestuali. Lo scopo principale era quello di renderedisponibile su Internet documenti correlati come in un enormeipertesto. La necessità di una maggioreinterattività tra l’utente e il server Web, natasoprattutto nel momento in cui grandi aziende hanno vistonella rete delle reti, un nuovo veicolo commerciale, haindirizzato gli sforzi nello sviluppo di strumenti perrendere il Web sempre più "dinamico". Unclassico esempio è dato dai motori di ricerca:l’utente inserisce in una form una parola chiave einvia al server la richiesta restando in attesa di unarisposta in tempo reale. Dalla parte del server viene aquesto punto attivata una procedura in grado di interrogareun database e di generare una pagina HTML con la lista deilink richiesti. Per fare questo, l’HTML non èsufficiente e quindi è stato introdotto da subito unostandard che consentisse di far comunicare le richieste HTTPcon una applicazione residente sul server, lo standard CGI(Common Gateway Interface). 
Sinteticamente, l’interazione tra browser eapplicazione CGI segue i questa procedura: 

-il browser invia al server Web una richiesta facendoriferimento al nome dell’applicazione seguita da unaserie di parametri; 
-il server Web riconosce che la richiesta deve essereindirizzata all’applicazione specificata e ne attivaun’istanza passandole opportunamente iparametri 
-l’applicazione effettua l’elaborazione in baseai parametri acquisiti e crea sullo standard output un flussodi dati che costituisce la pagina di risposta per ilbrowser. 
-il server Web cattura il flusso di dati generatodall’applicazione CGI e la trasforma in una rispostaHTTP 

L’applicazione CGI può essere uno script dishell del sistema operativo o di un linguaggio interpretato(ad esempio Perl) oppure una applicazione vera e propriasviluppata con un qualsiasi linguaggio di programmazione eche segue alcune regole per interfacciarsi con il Web.

Client-side scripting
L’interfaccia CGI tuttavia presenta dei limiti: adesempio anche per semplici elaborazioni vengono richiestemolte risorse al server, e in certi casi ciòpuò portare a ritardi sulla risposta o ad un eccessivocarico sul server stesso. Si pensi al caso di invio di datiin qualche modo errati (ad esempio, una data non valida) cheattivano un’istanza di applicazione CGI conl’unico effetto di notificare l’erroneoinserimento di dati e con la conseguenza di consumare risorsedel server e della banda di trasmissione.

Per superare questo genere di problemi, Netscape prima eMicrosoft dopo, hanno pensato di permettere ai loro browser,di interpretare particolari linguaggi, detti linguaggi discripting (JavaScript, Jscript e VBscript), che permettono alclient di effettuare alcune semplici elaborazioni,permettendo sicuramente al server di alleggerire il carico edando una spinta decisiva verso le attuali capacitàinterattive del Web.

Introduzione ad ASP
Il successo ottenuto dal client-side scripting ha portato inbreve tempo allo sviluppo di linguaggi di scripting anche peril lato server, iniziando prima con ambienti specializzati,come ad esempio Borland IntraBuilder dove è Javascriptil linguaggio sever-side utilizzato e poi orientandosi versolinguaggi di scripting integrati nel server Web, come adesempio in Netscape Enterprise Server.

Cavalcandoquesta tendenza, la Microsoft, rilasciando la versione 3.0 diInternet Information Server (IIS), ha introdotto sul mercatodegli scripting server-side, la tecnologia Active ServerPages (ASP), con l’idea di sfruttare non solo lepotenzialità degli strumenti server dedicati allaconnettività, ma anche attraverso la tecnologia COM(Common Object Model), sfruttare tutte le risorse che ilserver Microsoft ha a disposizione e coinvolgendo anche ilinguaggi di scripting come Jscript e Vbscript.

A cosa serve e come funziona

Le pagine ASP sono completamente integrate con i file HTML,sono facili da creare e non necessitano di compilazione, sonoorientate agli oggetti e usano componenti server ActiveX.

Possiamo affermare che ASP, è lo strumento che riescea far convogliare tutte le risorse disponibile sul server,per realizzare un sito Web (che nell’ottica ASPcoincide con una applicazione) che possa sfruttare diversetecnologie in modo trasparente.

Le pagine di un sito non sono più una semplicecollezione di documenti HTML ma un insieme di paginecontenenti codice script interpretabile dal server Web, ilquale effettua le elaborazioni specificate prima di inviarela pagina HTML risultante al browser che l’harichiesta.

E’ da sottolineare che il risultato della elaborazionedel motore ASP, è una pagina HTML standard che offredi conseguenza il vantaggio, di essere indipendente dal tipodi browser utilizzato. La figura sintetizza lo schema difunzionamento di un’applicazione ASP: 

Ingrandisci! 
clicca qui per ingrandimento

-Il browser richiede una pagina ASP; 
-il Web server preleva la pagina ASP ed attival’interprete ASP per la pre-elaborazione della pagina,coinvolgendo eventualmente altri componenti presenti sulserver 
-il risultato dell’elaborazione eventualmente altricomponenti presenti sul server 
-il risultato dell’elaborazione viene inviato albrowser tramite il protocollo HTTP 

ASP e client/server

Tra i vantaggi di ASP, è stato messo in risalto, lagenerazione di pagine Web in HTML standard, ottenendo in talmodo una completa indipendenza dell’applicazione Webdal particolare browser utilizzato. Questo aspetto comportatuttavia un lavoro notevole per il server che deve generarepagine statiche. In un certo senso questa soluzione èin contrasto con il modello client/server secondo il quale ilcarico di lavoro di elaborazione viene suddiviso tra le dueentità. L’introduzione stessa dei linguaggi discripting client side aveva questo scopo. Con ASP si dovrebbequindi dedurre un ritorno al modello centrato esclusivamentesul server. Invece ASP mette a disposizione del progettista,la possibilità di decidere quale parte del codice fareseguire dal client e quale dal server, magari decidendolosulla base del browser utilizzato.

ASP e i suoi utilizzi

Definire i contesti di applicazione di ASP, equivale adefinire i contesti in cui è opportuno utilizzareelaborazioni sul server. Tuttavia è possibiledelineare alcuni tipi di applicazione per le quali ASPpuò essere una soluzione indicata.

L’utilizzo per cui era stata progettata la tecnologiaASP, era originariamente quello di interfacciare il browsercon un database, ma basandosi sul modello COM (ComponentObject Model), ASP è in grado di interagire con leapplicazioni che seguono questo standard e riportare irisultati di questa interazione sotto forma di pagine Web. Adesempio la richiesta di un utente di visualizzare una tabellasi traduce in una richiesta da parte di ASP verso il databasedi accedere alla tabella in questione, rappresentarlainternamente tramite un oggetto ADO e tradurre il contenutodella tabella in una serie di tag HTML. La possibilitàdi interagire con database ODBC compatibili, pone ASP comeuno dei mezzi più efficaci per la realizzazione diapplicazioni distribuite indipendentemente dal databaseutilizzato.

Inoltre il principio di interazione con applicazioni COMconsente alle pagine ASP, di colloquiare con sistemi di postaelettronica (ad esempio Exchange o SMTP server) oppureinteragire con applicazioni Microsoft come MTS (MicrosoftTransaction Manager e Message Queue Server). Infine,attraverso la tecnologia ActiveX , è possibileestendere le funzionalità di ASP, progettando ex-novo,altri oggetti.

 



Ti potrebbe interessare anche

commenta la notizia