• Non ci sono risultati.

Architetture e applicazioni web

N/A
N/A
Protected

Academic year: 2021

Condividi "Architetture e applicazioni web"

Copied!
10
0
0

Testo completo

(1)

L o

Architetture e applicazioni web

Guido Porruvecchio

Tecnologia e Applicazioni della Rete Internet

(2)

Cosa è un'applicazione web

E' un particolare tipo di applicazione che si appoggia sulle tecnologie, infrastrutture e protocolli della rete Internet e del web in particolare

A differenza di un'applicazione tradizionale, l'utente non ha davanti un client costruito appositamente per quel programma, ma un'interfaccia standard verso un sistema altrettanto standard che processa le sue richieste e restituisce l'output richiesto

(3)

Architetture - Client-Server

L'architettura classica per i sistemi di rete è quella client-server

Il server resta in ascolto in attesa delle richieste del client

Il client inoltra una richiesta al server

Il server soddisfa tale richiesta (ad es. inviando una risorsa) e la invia al client

Il client riceve la risorsa e la sua richiesta è soddisfatta

Il client a volte è un thin client, in quanto spesso l'elaborazione avviene lato server, e il client serve

(4)

Architetture - Client-Server

E' l'architettura tipica dei protocolli applicativi visti (HTTP, SMTP, POP...) Nel web viene utilizzata per le pagine statiche, cioè quelle costituite da HTML puro

(5)

Architetture - n-Tier

Le applicazioni “tradizionali” vengono anche dette

“1-tier” (ad 1 livello) in quanto nel client c'è tutto ciò che serve ad eseguire il programma:

Interfaccia utente Logica

Dati

Quella Client-Server viene definita architettura “2- Tier” (a 2 livelli), in quanto sono 2 le entità in

gioco

Ben presto sono emersi i limiti di questo tipo di architettura per applicazioni web di una certa

(6)

Architetture - n-Tier

Al crescere della complessità infatti, un solo livello che si occupi della logica del

programma e anche dei dati diventa troppo difficile da gestire

Un'estensione del modello client-server è quello “3-tier”, che utilizza uno strato

intermedio (“middleware”) tra il client e il database per tenerli separati:

Presentation Tier--->Client

Application/Logic/Business Logic Tier-->Application Server Data Tier--->Database

(7)

Architetture - n-Tier

Il modello è lineare (presentazione e dati comunicano

(8)

Architetture - n-Tier

(9)

Architetture - n-Tier

L'architettura 3-Tier è il caso più semplice del paradigma n-Tier

Infatti, per motivi di prestazioni, sicurezza o migliore organizzazione del codice, questi strati possono essere ulteriormente

suddivisi

Ad esempio separando il client dalla

gestione dell'interfaccia o inserendo un ulteriore strato intermedio tra application server e database)

(10)

Architetture - n-Tier

Il vantaggio principale di un'architettura web n-tier è l'indipendenza del client

In un'applicazione client-server, è possibile costruire un client che interagisca soltanto con un particolare tipo di server, e sia quindi utilizzabile solo in quella particolare applicazione Un'applicazione web a più strati invece, si poggia sempre su un client standard, ossia un browser web

Questo è ovviamente possibile anche con un'architettura a 2 strati in quanto è una caratteristica di tutte le

applicazioni web

Tuttavia la presenza di 2 soli livelli facilita la pratica,

deprecata in ambienti di rete, di realizzare client e server ad- hoc, slegati dagli standard

Riferimenti

Documenti correlati

La stragrande maggioranza delle imprese, non solo quelle appartenenti al settore agroalimentare, hanno negli ultimi anni attuato misure volte al perseguimento

L’acquisizione dei dati dall’oscilloscopio avviene tramite l’interfaccia hardware GPIB, mentre il software per l’elaborazione è stato realizzato con il linguaggio di

e.g.: search in a database, file request, purchase a book, booking a flight, … Transmit user data to the Web server. Process data on server-side, accessing a database

I programmi in esecuzione su ciascun nodo sono in grado di condividere le proprie informazioni e di richiedere l’esecuzione di altri programmi da parte di altri nodi.

L’architettura più semplice e più diffusa L architettura più semplice e più diffusa Un client invia una richiesta ad un server per l’esecuzione di un compito (task). Un task

Cliente (Client): quando l’applicazione utilizza dei servizi messi a disposizione da altre applicazioni Servente (Server): quando l’applicazione fornisce servizi usati da

z Il client è un qualsiasi programma che invia una richiesta e aspetta una risposta; tipicamente termina dopo avere usato un server un numero finito di volte. z Il server aspetta

from bagnanti Mostra il codice dell’ultimo iscritto select nome, cognome.