Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Architettura web

4,553 views

Published on

Published in: Technology
  • Be the first to comment

Architettura web

  1. 1. Architettura Web
  2. 2. Cos’è il Web  E‟ molto improbabile riuscire a racchiudere il concetto di Web in una o più definizioni  Possiamo partire dicendo che il Web è uno dei servizi disponibili su Internet, il più famoso insieme alla posta elettronica  Il servizio mette a disposizione degli utenti uno spazio digitale ed elettronico per la pubblicazione di contenuti multimediali2 Architettura Web
  3. 3. Cos’è il Web  E‟ anche un mezzo per la distribuzione di software e la fornitura di servizi particolari sviluppati dagli stessi utenti  Nell‟accezione più recente, il Web è stato caratterizzato da una evoluzione molto importante  Tale evoluzione ha scaturito la nascita di quello che oggi è noto con il termine di “Web 2.0”  Questi implica una forte forma di coinvolgimento per gli utenti3 Architettura Web
  4. 4. Storia del Web in 4 slide  Per cercare di capire al meglio cosa sia esattamente il Web può essere utile un viaggio velocissimo nella sua storia  In origine la prima “rete” si chiamava ARPANET e fu sviluppata alla fine degli anni sessanta da una agenzia del Ministero della Difesa americana per collegare postazioni remote  La prima rete connetteva quattro nodi, 3 università e un centro di ricerca, con una ampiezza di banda di 50Kbps  L‟architettura era client-server e le applicazioni venivano eseguite facendo uso dei protocolli Telnet e FTP4 Architettura Web
  5. 5. Storia del Web in 4 slide  Tra gli anni „70 e ‟80 la rete si collegò oltreoceano, con Francia, Norvegia e Inghilterra, e nel 1976 la regina d‟Inghilterra spedì la sua prima e-mail  Nel „79 vennero inventate le emoticon, per rappresentare il proprio umore via e-mail, mentre nel 1980 si ebbe il primo attacco virale che compromise temporaneamente l‟intera rete  Sempre in quegli anni vennero introdotti i protocolli TCP e IP e si diede quindi il via alla rete con le caratteristiche odierne  Nel 1991 al CERN di Ginevra vennero inventati il protocollo HTTP e il World Wide Web (www) con il primo sito web5 Architettura Web
  6. 6. Storia del Web in 4 slide  Nel World Wide Web (WWW), le risorse disponibili sono organizzate secondo un sistema di librerie (le pagine), a cui si può accedere utilizzando appositi programmi detti browser  La sempre maggiore facilità di utilizzo dei browser, unita alla evoluzione e diffusione dei Personal Computer, hanno aperto luso di Internet ad una massa sempre crescente di persone  In breve Internet si sposta al di fuori dell‟ambito strettamente informatico, favorendo una crescita esponenziale  Questo periodo della rete verrà in seguito denominato Web 1.06 Architettura Web
  7. 7. Storia del Web in 4 slide  I primi utenti internet in Italia risalgono alla prima metà degli anni ‟90, quando la rete si diffonde anche a livello di infrastruttura arrivando anche nel nostro paese  I primi servizi di connettività a pagamento trovano spazio anche nell‟ambito domestico oltre che professionale, favorita dalla crescente presenza nelle case dei PC  Dopo qualche anno comincia a svilupparsi la concorrenza e questo favorisce notevolmente l‟utenza finale, con la maggiore disponibilità di servizi e i sempre minori costi di connessione7 Architettura Web
  8. 8. Dal Web 1.0 al Web 1.5  A seguito dellintegrazione con database e allutilizzo di sistemi di gestione dei contenuti (CMS), Internet si è evoluta ulteriormente  Sono nati nuovi siti dinamici con forte capacità di interazione  Un esempio sono i forum e i blog  Questo periodo della rete, caratterizzato da un nuovo dinamismo, verrà in seguito denominato Web 1.58 Architettura Web
  9. 9. Dal Web 1.5 al Web 2.0  Oggi riusciamo a classificare le varie “versioni” del web, ma questo è stato fatto in maniera retroattiva  Prima della definizione del Web 2.0, nessuno avrebbe saputo classificare il Web 1.0 o il Web 1.5  Questo però non ci consente di poter dire che il Web 2.0 è un ambito noto e conosciuto  Anche se già è stato definito, in via non definitiva, l‟ambito di applicazione del futuro Web 3.09 Architettura Web
  10. 10. Internet come una piattaforma applicativa  L‟evoluzione tecnologica in termini di potenza di calcolo e di facile disponibilità di hardware hanno facilitato la presenza di Internet nelle famiglie  La larghezza di banda sempre più alta ha poi consentito l‟accesso a contenuti sempre più complessi  Tutto questo è stato favorito dalla nascita ma soprattutto dalla crescita dei linguaggi di script lato client, come JavaScript  Questo linguaggio, utilizzato con tecniche di sviluppo evolute come AJAX, hanno contribuito a questo fenomeno sociale10 Architettura Web
  11. 11. Internet come una piattaforma applicativa  Oggi tutti usano internet come un contenitore di servizi  Si consulta internet per qualunque cosa (una ricetta, il meteo, ritrovare un bugiardino perduto...)  E‟ diventato, per la maggior parte delle persone, un enorme contenitore capace di contenere tutto (o quasi)  Ogni giorno milioni di persone si espongono sulla rete  Questi utenti producono quantità enormi di nuove informazioni pronte a viaggiare e a diffondersi ovunque11 Architettura Web
  12. 12. Classificazione del Web 1.0 • Pagine Web Statiche • Siti e Portali • Scarsa/inesistente interazione tra utenti 1.5 • Introduzione dei motori CMS • Interazione tra utenti (forum, community, ...) 2.0 • Internet come piattaforma applicativa • Elevata interazione utente/i (RIA) • Contenuti autoprodotti dall‟utenza 3.0 • Mobilità elevata • Contenuti anche complessi in movimento (infrastruttura/banda evoluta)12 Architettura Web
  13. 13. Internet come veicolo di business  Le aziende sono state le prime a capire l‟importanza della rete  Le comunicazioni si sono velocizzate in maniera esponenziale, consentendo di veicolare in maniera repentina le informazioni  Le aziende hanno trovato nuova linfa vitale nello sviluppo di applicazioni e servizi evoluti, disponibili sul web  Pian piano diverse aziende ne hanno creato nuovi settori produttivi, dall‟e-business ai servizi sul web13 Architettura Web
  14. 14. La comunicazione in rete con il web  La prima rete (ARPANET) utilizzava come protocolli di comunicazione TELNET e FTP  Successivamente furono introdotti prima i protocolli TCP e IP, e quindi il protocollo HTTP (inventato nel 1991)  In effetti il termine “Internet” viene menzionato per la prima volta nel Dicembre „74, nell‟RFC che descrive il protocollo TCP14 Architettura Web
  15. 15. Le applicazioni N-Tier  Per applicazione N-tier si intende unapplicazione che coinvolge N livelli di transazione  Le parti coinvolte in questa architettura assumono diversi nomi e diversi significati in base al loro compito nella catena transitiva  Alcuni esempi sono server, middleware, client, ecc.  Un esempio classico di applicazione N-Tier è una applicazione client-server15 Architettura Web
  16. 16. Le applicazioni N-Tier  Le componenti di una applicazione N-Tier, comunicano tra di loro tramite dei protocolli di comunicazione  Nel corso degli anni, i continui sviluppi e le nuove necessità hanno reso necessario trasformazioni, evoluzioni e nuove implementazioni di protocolli  Lo sviluppo di internet ha coinvolto diversi protocolli, alcuni dei quali tutt‟ora in uso16 Architettura Web
  17. 17. Le applicazioni N-Tier  I protocolli si sono evoluti, nel limite del possibile, raggiungendo velocemente l‟utilizzo di massa  Nel tempo le esigenze sono cambiate in base alle nuove architetture  I protocolli però, sono rimasti sostanzialmente gli stessi17 Architettura Web
  18. 18. Le applicazioni web  Sono le applicazioni disponibili tramite internet  Sono disponibili sotto varie forme:  Portali multiservizi (utenza privata)  Siti specializzati (tematici)  Servizi dedicati all’utenza pubblica  Servizi dedicati alle aziende18 Architettura Web
  19. 19. Le applicazioni web  Le applicazioni Web sono una valida alternativa alle tradizionali applicazioni Client/Server per vari motivi:  facilità di distribuzione e aggiornamento: unapplicazione Web si trova interamente sul server, per cui la pubblicazione sul server risolve i problemi di distribuzione e aggiornamento  accesso multipiattaforma: laccesso allapplicazione è indipendente dallhardware e dal sistema operativo utilizzato dagli utenti19 Architettura Web
  20. 20. Le applicazioni web  Altri vantaggi:  riduzione dei costi di gestione: luso di Internet come infrastruttura per unapplicazione Web riduce notevolmente sia i costi di connettività che i costi di gestione dei client  scalabilità: unapplicazione Web ben progettata può crescere insieme alle esigenze dellazienda senza particolari problemi20 Architettura Web
  21. 21. Contesti di esecuzione  Le applicazioni web vengono definite anche in base al contesto in cui dovranno essere inserite  Questo contesto influenza notevolmente l‟architettura finale dell‟applicazione  In particolar modo le politiche relative alla sicurezza applicativa risentiranno del contesto in cui vengono calate21 Architettura Web
  22. 22. Contesti di esecuzione  I tre contesti possibili sono:  Internet • Le applicazioni sono fruibili in rete ad una utenza generica che accede ai servizi da qualunque posizione  Intranet • Le applicazioni riguardano un ambito chiuso e sono accessibili solo dall‟interno di un perimetro ben preciso  Extranet • Le applicazioni riguardano un ambito chiuso ma sono accessibili anche dall‟esterno del perimetro classico22 Architettura Web
  23. 23. Architettura web  Identificazione delle componenti principali: Utente Request applicazione Server (browser/applicativo Response Web ) Dati Applicazion e Web Livello Utenza Livello Applicativo Livello Dati23 Architettura Web
  24. 24. Architettura web  Livello Utenza  Rappresenta la parte di interfaccia disponibile all‟utenza  Nella maggioranza dei casi è costituito dalle pagine usufruibili dal browser  A questo livello vengono collocate anche quelle componenti che agiscono appunto lato client (html, script, applet, activeX, ecc.)  Lo sviluppo di questo lato della applicazione richiede molta cura per la parte grafica (compatibilità dei vari browser)24 Architettura Web
  25. 25. Architettura web  Livello Applicativo  Rappresenta la parte di logica dell‟applicazione  Fisicamente ci si interfaccia con un Web Server (IIS, Apache, ColdFusion, ecc)  Il Web Server si preoccupa di ospitare l‟applicazione web e di gestire il flusso entrante e uscente da essa  Una parte della logica di sicurezza delle applicazioni web viene spesso collocata direttamente sul Web Server, riducendo di fatto lo sforzo implementativo25 Architettura Web
  26. 26. Architettura web  Livello Applicativo  L‟applicazione web, residente sul Web Server ha il compito: • ricevere e di fatto elaborare le richieste dell‟utenza • interfacciarsi con il livello dati per produrre il risultato • generare la risposta sia in termini di dati che in termini di interfaccia utente (pagina con i risultati) • gestire la logica di sicurezza a suo carico (parzialmente o totalmente) • gestire le eccezioni con comportamenti programmati26 Architettura Web
  27. 27. Architettura web  Livello Dati  A questo livello sono presenti i fornitori dei dati, normalmente dei DBMS  I dati non sono accessibili direttamente dal Web Server, ma sono normalmente accessibili all‟applicazione web ospitata  In questo stesso lato possono accentrarsi anche altri servizi, come: • server di posta elettronica • server ftp • server di documentazione27 Architettura Web
  28. 28. Evoluzione dell’architettura web  Nel corso degli anni l‟architettura web ha subito radicali trasformazioni  I vecchi modelli di pubblicazione e di sottoscrizione delle informazioni si sono evoluti e trasformati  In questi concetti, si è stabilito un ruolo importante per la questione della sicurezza28 Architettura Web
  29. 29. Architettura web 1.0  World Wide Web (WWW), Pagine statiche Internet Web Server Pagine Web29 Architettura Web
  30. 30. Architettura web 1.0  World Wide Web (WWW), Pagine dinamiche Web Server Internet Pagine Web Database30 Architettura Web
  31. 31. Architettura web 1.5  World Wide Web (WWW), Contenuti dinamici Web Server Internet Gestione Pagine Web dei contenuti Database31 Architettura Web
  32. 32. Architettura web 2.0  World Wide Web (WWW), Contenuti creati dall’utenza Web Server Internet Gestione dei Pagine Web contenuti Database32 Architettura Web

×