La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Tecnologie di Sviluppo per il Web

Presentazioni simili


Presentazione sul tema: "Tecnologie di Sviluppo per il Web"— Transcript della presentazione:

1 Tecnologie di Sviluppo per il Web
Introduzione Architettura di Riferimento versione 2.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca – – Università della Basilicata

2 Sommario Introduzione Architettura Client-Server Server Web
Architettura >> Sommario Sommario Introduzione Architettura Client-Server Architettura a Due Livelli Architettura a Tre Livelli Server Web Browser Web G. Mecca - Tecnologie di Sviluppo per il Web

3 Introduzione La storia di questo corso comincia nell’89
Architettura >> Introduzione Introduzione La storia di questo corso comincia nell’89 Tim Berners-Lee al CERN, progetto WWW primi prototipi nel 1991 Idea: “distributed hypermedia” un ipertesto multimediale distribuito ipertesto = testo a sviluppo non lineare multimediale = più di un “medium” distribuito = dislocato sui nodi di una rete G. Mecca - Tecnologie di Sviluppo per il Web

4 Introduzione Tre idee fondamentali Inizialmente Oggi
Architettura >> Introduzione Introduzione Tre idee fondamentali un protocollo client-server (HTTP) un sistema di indirizzamento (URL) un linguaggio per la compilazione (HTML) Inizialmente pubblicazione di contenuti (documenti) Oggi 80% dei flussi Internet è basato su HTTP contenuti e servizi (sistemi informativi) G. Mecca - Tecnologie di Sviluppo per il Web

5 Architettura Client-Server
Architettura >> Architettura Architettura Client-Server Architettura Client-Server browser HTTP client HTTP Applicazione (es: Java) Rete TCP/IP richieste (URL) Server protocollo HTTP risposte risorse G. Mecca - Tecnologie di Sviluppo per il Web

6 Terminologia “Web Characterization Terminology”, W3C Risorsa Server
Architettura >> Architettura Terminologia “Web Characterization Terminology”, W3C Risorsa qualsiasi cosa sia accessibile su un server Server ruolo svolto da un’applicazione che fornisce risorse Client ruolo svolto da un’applicazione che richiede risorse Messaggio unità di comunicazione scambiata tra client e server G. Mecca - Tecnologie di Sviluppo per il Web

7 Terminologia Richiesta Risposta Utente Autore o Sviluppatore
Architettura >> Architettura Terminologia Richiesta messaggio inviato dal client al server per richiedere una operazione su una risorsa Risposta messaggio contenente il risultato dell’esecuzione di una richiesta Utente soggetto che interagisce con il client per accedere risorse Autore o Sviluppatore chi pubblica risorse su un server G. Mecca - Tecnologie di Sviluppo per il Web

8 Architettura Client-Server
Architettura >> Architettura Architettura Client-Server World Wide Web servizio applicativo di Internet basato su un’architettura client/server ma non è l’unico Nel caso del Web risorse: documenti, immagini ed altri media, servizi interattivi client: tipicamente il browser server: server per l’accesso a risorse Web G. Mecca - Tecnologie di Sviluppo per il Web

9 Architetture di Riferimento
Architettura >> Architettura Architetture di Riferimento Due livelli, pagine statiche pagine (file html) Server HTTP Internet intranet browser centrata sui contenuti nessun servizio G. Mecca - Tecnologie di Sviluppo per il Web

10 Architetture di Riferimento
Architettura >> Architettura Architetture di Riferimento Tre livelli con componenti HTTP Internet intranet browser Pagine Server Applicativo DB DBMS centrata sui servizi architettura applicativa completa G. Mecca - Tecnologie di Sviluppo per il Web

11 Architettura Compiti del browser Compiti del server
Architettura >> Architettura Architettura Compiti del browser visualizzare le risorse e gestire l’interazione con l’utente Compiti del server nel caso di documenti: inviare il contenuto di file contenuti sul disco locale nel caso di servizi interattivi: eseguire un’applicazione e restituire i risultati dell’esecuzione G. Mecca - Tecnologie di Sviluppo per il Web

12 Server Web Applicazione software Caratteristiche
Architettura >> Server Web Server Web Applicazione software che fornisce accesso ad un sito Web Caratteristiche fornisce servizi basati su HTTP consente l’accesso a documenti statici consente l’accesso a servizi interattivi (applicazioni) >> server applicativo G. Mecca - Tecnologie di Sviluppo per il Web

13 Server Web Apache HTTP Server (httpd.apache.org)
Architettura >> Server Web Server Web Apache HTTP Server (httpd.apache.org) open source (deriva da NCSA) server HTTP vari protocolli di interfaccia con server applicativi (es: CGI, PHP) Microsoft Internet Information Services integrato con il server applicativo .NET G. Mecca - Tecnologie di Sviluppo per il Web

14 Server Web Apache Tomcat (jakarta.apache.org)
Architettura >> Server Web Server Web Apache Tomcat (jakarta.apache.org) server applicativo open source per Servlet e JSP include server HTTP IBM WebSphere, Bea WebLogic ed altri server applicativi commerciali per J2EE includono server HTTP JBoss ( server applicativo open source per J2EE G. Mecca - Tecnologie di Sviluppo per il Web

15 Server Web Apache è il server Web più diffuso
Architettura >> Server Web Server Web Apache è il server Web più diffuso G. Mecca - Tecnologie di Sviluppo per il Web

16 Architettura di un Server Web
Architettura >> Server Web Architettura di un Server Web Contiene vari moduli Server HTTP implementa il protocollo HTTP include vari altri servizi; es: caching, logging Gestore del file system contenuti statici salvati come file Server applicativo gestore di applicazioni e componenti G. Mecca - Tecnologie di Sviluppo per il Web

17 Architettura di un Server Web
Architettura >> Server Web Architettura di un Server Web Architettura a 3 livelli browser HTTP client HTTP Applicazione (es: Java) Rete TCP/IP Server Web HTTP file system Gestore dei Fie DB DBMS Server Applicativo componenti G. Mecca - Tecnologie di Sviluppo per il Web

18 Registrazioni (Logging)
Architettura >> Server Web Registrazioni (Logging) Servizio di registrazione tutto quello che avviene sul server viene registrato in opportuni file di registro (log) File principali richieste: IP del richiedente, URI richiesto, data, esito errori provenienza (referer) G. Mecca - Tecnologie di Sviluppo per il Web

19 Registrazioni (Logging)
Architettura >> Server Web Registrazioni (Logging) Architettura a 3 livelli Server Web Registrazione degli accessi (log) browser HTTP client HTTP Applicazione (es: Java) Rete TCP/IP HTTP file system Gestore dei Fie DB DBMS Server Applicativo componenti G. Mecca - Tecnologie di Sviluppo per il Web

20 Caching Caching Più in generale
Architettura >> Architettura >> Caching Caching Caching servizio fondamentale offerto dai server Web orientato a migliorare le prestazioni Più in generale tecnica essenziale per l’accesso ai dati distribuiti nell’architettura di riferimento esistono meccanismi di caching a più livelli G. Mecca - Tecnologie di Sviluppo per il Web

21 Caching Caching a vari livelli delle risposte browser HTTP DBMS Server
Architettura >> Architettura >> Caching Caching Caching a vari livelli delle risposte Server Web DB DBMS HTTP file system Gestore dei Fie Server Applicativo componenti Registrazione degli accessi (log) browser Server Proxy Cache del browser del server Cache Cache del proxy G. Mecca - Tecnologie di Sviluppo per il Web

22 Server Web In sintesi: Principali servizi del server
Architettura >> Server Web Server Web In sintesi: Principali servizi del server servizio HTTP verso il client (include autenticazione e autorizzazione) gestione delle risorse sul file system gestione delle applicazioni registrazione degli accessi (logging) gestione dei meccanismi di caching G. Mecca - Tecnologie di Sviluppo per il Web

23 Browser Web Principali servizi Browser diversi, diverse compatibilità
Architettura >> Browser Web Browser Web Principali servizi consente di specificare le richieste (URL) implementa il protocollo HTTP visualizza il contenuto delle risposte e consente la navigazione cache locale altri servizi (preferiti, stampa, salva, ecc.) Browser diversi, diverse compatibilità G. Mecca - Tecnologie di Sviluppo per il Web

24 Browser Web Microsoft Internet Explorer Netscape e Mozilla (Gecko)
Architettura >> Browser Web Browser Web Microsoft Internet Explorer leader di mercato Netscape e Mozilla (Gecko) prima: Netscape Navigator (2, 3, 4 fino a 4.78) Opera “adware” Lynx browser esclusivamente testuale G. Mecca - Tecnologie di Sviluppo per il Web

25 Browser Web Browser per disabili Browser per dispositivi mobili
Architettura >> Browser Web Browser Web Browser per disabili es: IBM Home Page Reader Browser per dispositivi mobili es: Eudora Web per Palm es: Pocket Internet Explorer per Pocket PC Altri browser Amaya, browser di del consorzio W3C Konqueror, browser di KDE Galeon, browser di Gnome G. Mecca - Tecnologie di Sviluppo per il Web

26 Browser Web: Statistiche
Architettura >> Browser Web Browser Web: Statistiche Browser Fonte 3 Fonte 2 Fonte 1 IE6 (>) 48% 60% 56% IE5 (<) 25% 37% 0.95% 1.7% 0.5% Opera (>) Gecko (>) 14% 6.6% 2.2% 1.9% 2.7% 1.5% NN4 (<) 1.1% 0.55% 1.4% IE4 (<) 0.15% 0.05% 0% NN3 0.3% 1.5% Altri Fonte: marzo 2003 G. Mecca - Tecnologie di Sviluppo per il Web

27 Riassumendo Introduzione Architettura Client-Server Server Web
Architettura >> Sommario Riassumendo Introduzione Architettura Client-Server Architettura a Due Livelli Architettura a Tre Livelli Server Web Browser Web G. Mecca - Tecnologie di Sviluppo per il Web

28 Termini della Licenza Termini della Licenza This work is licensed under the Creative Commons Attribution-ShareAlike License. To view a copy of this license, visit or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. Questo lavoro viene concesso in uso secondo i termini della licenza “Attribution-ShareAlike” di Creative Commons. Per ottenere una copia della licenza, è possibile visitare oppure inviare una lettera all’indirizzo Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. G. Mecca - Tecnologie di Sviluppo per il Web


Scaricare ppt "Tecnologie di Sviluppo per il Web"

Presentazioni simili


Annunci Google