• 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

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

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

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.