Home
topics
Cos'è l'architettura three-tier
L'architettura three-tier è un'architettura di applicazioni software ben consolidata che organizza le applicazioni in tre tier di calcolo logici e fisici: il tier presentazione, o interfaccia utente, il tier applicazione, dove i dati vengono elaborati, e il tier dati, dove i dati associati all'applicazione vengono memorizzati e gestiti.
Il vantaggio principale dell'architettura three-tier è che, poiché ciascun tier viene eseguito sulla propria infrastruttura, può essere sviluppato contemporaneamente da un team di sviluppo separato e può essere aggiornato o scalato in base alle necessità senza ripercussioni sugli altri tier.
Per decenni, l'architettura three-tier è stata l'architettura prevalente per le applicazioni client-server. Oggi la maggior parte delle applicazioni three-tier è un obiettivo per la modernizzazione che utilizza tecnologie native del cloud quali container e microservizi e per la migrazione verso il cloud.
Il tier presentazione è l'interfaccia utente ed il livello di comunicazione dell'applicazione, in cui l'utente finale interagisce con l'applicazione. Il suo scopo principale è quello di visualizzare le informazioni e raccogliere informazioni dall'utente. Questo tier di livello superiore, ad esempio, può essere eseguito su un browser web, come applicazione desktop o come GUI (Graphical User Interface). Generalmente, i tier presentazione web sono sviluppati utilizzando HTML, CSS e JavaScript. Le applicazioni desktop possono essere scritte in diversi linguaggi, a seconda della piattaforma.
Il tier applicazione, noto anche come tier logico o tier intermedio, è il cuore dell'applicazione. In questo tier, le informazioni raccolte nel tier presentazione sono elaborate - a volte in relazione ad altre informazioni contenute nel tier dati - usando la logica di business, un insieme specifico di regole di business. Il tier applicazione può anche aggiungere, eliminare o modificare i dati nel tier dati.
Il tier applicazione è tipicamente sviluppato utilizzando Python, Java, Perl, PHP o Ruby e comunica con il tier dati tramite chiamate API.
Il tier dati, in alcuni casi chiamato tier database, tier accesso ai dati o back-end, è il punto in cui vengono archiviate e gestite le informazioni elaborate dall'applicazione. Questo può essere un sistema di gestione del database relazionale come PostgreSQL, MySQL, MariaDB, Oracle, DB2, Informix o Microsoft SQL Server o in un server del database NoSQL come Cassandra, CouchDB o MongoDB.
In un'applicazione three-tier, tutte le comunicazioni passano attraverso il tier applicazione. Il tier presentazione e il tier dati non possono comunicare direttamente tra loro.
Nelle discussioni sull'architettura three-tier, il termine livello è spesso usato in modo intercambiabile - ed erroneamente - al posto di tier, come in 'livello di presentazione' o 'livello di logica di business.'
Non sono la stessa cosa. Il termine 'livello' si riferisce ad una divisione funzionale del software, mentre il termine 'tier' si riferisce ad una divisione funzionale del software che viene eseguita su un'infrastruttura separata dalle altre divisioni. L'app Contatti del cellulare, ad esempio, è un'applicazione a tre-livelli , ma un'applicazione a singolo tier , perché tutti e tre i livelli vengono eseguiti sul cellulare.
La differenza è importante, perché i livelli non possono offrire gli stessi vantaggi dei tier.
Il principale vantaggio dell'architettura three-tier è costituito dalla separazione logica e fisica delle funzionalità. Ogni tier può essere eseguito su un sistema operativo separato e una piattaforma server - ad esempio, server web, server delle applicazioni, server di database - che meglio si adatta ai suoi requisiti funzionali. E ogni tier viene eseguito su almeno un hardware server dedicato o su un server virtuale, quindi i servizi di ogni tier possono essere personalizzati e ottimizzati senza ripercussioni sugli altri tier.
Altri vantaggi (rispetto all'architettura single-tier o two-tier) comprendono:
Nello sviluppo web, i tier hanno nomi diversi ma eseguono funzioni simili:
Mentre l'architettura three-tier è l'architettura applicativa multi-tier più adottata, esistono altre architetture che potresti incontrare nel tuo lavoro o nella tua ricerca.
L'architettura two-tier è l'architettura client-server originale, costituita da un tier presentazione e da un tier dati; la logica aziendale è compresa nel tier presentazione, nel tier dati oppure in entrambi. Nell'architettura two-tier, il tier di presentazione - e di conseguenza l'utente finale - ha accesso diretto al tier dati e la logica di business è spesso limitata. Una semplice applicazione di gestione dei contatti, in cui gli utenti possono inserire e richiamare i dati dei contatti, è un esempio di applicazione two-tier.
L'architettura n-tier - chiamata anche architettura multi-tier - si riferisce a qualsiasi architettura applicativa con più di un tier. Tuttavia, le applicazioni con più di tre livelli sono rare, perché ulteriori livelli offrono pochi vantaggi e possono rendere l'applicazione più lenta, più difficile da gestire e più costosa da eseguire. Di conseguenza, i termini architettura n-tier e architettura multi-tier sono generalmente sinonimi che indicano l'architettura three-tier.
Passa al cloud più velocemente con le soluzioni IBM Cloud Pak® in esecuzione sul software Red Hat OpenShift — soluzioni integrate, open source, containerizzate, certificate da IBM.
Modernizza senza soluzione di continuità i tuoi carichi di lavoro e le tue applicazioni VMware con IBM Cloud®.
Modernizza, crea nuove applicazioni, riduci i costi e ottimizza il ROI.
Scopri cos'è la modernizzazione delle applicazioni, i vantaggi e le sfide comuni e come iniziare.
Scopri come funzionano i database relazionali e come si confrontano con altre opzioni di storage di dati.
Esplora le applicazioni native del cloud e in che modo promuovono l'innovazione e la velocità all'interno della tua azienda.