Livello N (multilivello), 3 livelli, 2 livelli Architettura con ESEMPIO
Cos'è il livello N?
An Applicazione a più livelli un programma è distribuito tra tre o più computer separati in una rete distribuita.
La forma più comune di n-tier è l'applicazione a 3 livelli ed è classificata in tre categorie.
- Programmazione dell'interfaccia utente nel computer dell'utente
- Logica aziendale in un computer più centralizzato e
- Dati richiesti in un computer che gestisce un database.
Questo modello di architettura consente agli sviluppatori software di creare applicazioni/sistemi riutilizzabili con la massima flessibilità.
In Livello N, “N” si riferisce a un numero di livelli o strati utilizzati come: 2 livelli, 3 livelli o 4 livelli, ecc. Si chiama anche “Multi-livello Architecnologia”.
L'architettura n-tier è un modello di architettura software collaudato nel settore. È adatto a supportare applicazioni client-server di livello aziendale offrendo soluzioni di scalabilità, sicurezza, tolleranza agli errori, riutilizzabilità e manutenibilità. Aiuta gli sviluppatori a creare applicazioni flessibili e riutilizzabili.
Livello N Architectura
Qui viene illustrata una rappresentazione schematica di un sistema a più livelli: livelli di presentazione, applicazione e database.
Questi tre strati possono essere ulteriormente suddivisi in diversi sottostrati a seconda delle esigenze.
Alcuni dei siti più popolari che hanno applicato questa architettura sono
- MakeMyTrip.com
- Applicazione aziendale Forza vendita
- Ferrovie indiane - IRCTC
- Amazon.com, ecc.
Alcuni termini comuni da ricordare, così da comprendere più chiaramente il concetto.
- Rete distribuita: È un'architettura di rete, in cui i componenti situati nei computer di rete coordinano e comunicano le loro azioni solo tramite il passaggio di messaggi. È una raccolta di sistemi multipli situati in nodi diversi, ma appare all'utente come un singolo sistema.
- Fornisce un'unica rete di comunicazione dati che può essere gestita separatamente da diverse reti.
- Un esempio di rete distribuita, in cui diversi client sono connessi all'interno di un'architettura LAN da un lato e dall'altro lato sono connessi a switch ad alta velocità insieme a un rack di server contenenti nodi di servizio.
- Server client Architecnologia: È un modello di architettura in cui il client (un programma) richiede un servizio da un server (un altro programma) vale a dire È un servizio di richiesta-risposta fornito su Internet o tramite una intranet. In questo modello, . servirà come un insieme di programmi/codici che eseguono una serie di azioni sulla rete. Mentre server, d'altro canto, è un set di un altro programma, che invia i set di risultati al sistema client come richiesto.
- In questo, il computer client fornisce un'interfaccia a un utente finale per richiedere un servizio o una risorsa da un server e, d'altro canto, il server elabora la richiesta e visualizza il risultato all'utente finale.
- Un esempio di modello client-server: un bancomat. Una banca è il server per l'elaborazione dell'applicazione all'interno dei grandi database dei clienti e il bancomat è il client che dispone di un'interfaccia utente con alcune semplici elaborazioni dell'applicazione.
- Piattaforma: Nell'informatica o nell'industria del software, una piattaforma è un sistema su cui possono essere eseguiti programmi applicativi. Consiste in una combinazione di hardware e software che dispongono di istruzioni integrate per processori/microprocessori per eseguire operazioni specifiche.
- In parole più semplici, la piattaforma è un sistema o una base in cui qualsiasi applicazione può essere eseguita ed eseguita per ottenere un compito specifico.
- Un esempio di piattaforma: una macchina personale carica di Windows 2000 o Mac OS X come esempi di 2 diverse piattaforme.
- Banca dati: Si tratta di una raccolta di informazioni organizzata in modo tale da poter essere facilmente accessibili, gestite e aggiornate.
- Esempi di database – MySQL, SQL Server e Oracle Database sono alcuni Db comuni.
Tipi di livello N Architetture
Esistono diversi tipi di livello N Architecnologie, come 3 livelli Architecnologia, 2 livelli Architettura e 1° livello Architectura.
Innanzitutto, vedremo 3 livelli Architettura, che è molto importante.
3-Tier Architectura
Osservando il diagramma seguente, puoi facilmente identificarlo Architettura a 3 livelli ha tre strati diversi.
- Livello di presentazione
- Livello della logica aziendale
- Livello del database
Qui abbiamo preso un semplice esempio di modulo studente per comprendere tutti questi tre livelli. Contiene informazioni su uno studente come: Nome, Indirizzo, Email e Immagine.
Livello dell'interfaccia utente o livello di presentazione
Livello di presentazione
private void DataGrid1_SelectedIndexChanged(object sender, System.EventArgs e) { // Object of the Property layer clsStudent objproperty=new clsStudent(); // Object of the business layer clsStudentInfo objbs=new clsStudentInfo(); // Object of the dataset in which we receive the data sent by the business layer DataSet ds=new DataSet(); // here we are placing the value in the property using the object of the //property layer objproperty.id=int.Parse(DataGridl.SelectedItem.Cells[1].Text.ToString()); // In this following code we are calling a function from the business layer and // passing the object of the property layer which will carry the ID till the database. ds=objbs.GetAllStudentBsIDWise(objproperty); // What ever the data has been returned by the above function into the dataset //is being populate through the presentation laye. txtId.Text=ds.Tables[0].Rows[0][0].ToString(); txtFname.Text=ds.Tables[0].Rows[0][1].ToString(); txtAddress.Text=ds.Tables[0].Rows[0][2].ToString(); txtemail.Text=ds.Tables[0].Rows[0][3].ToString();
Spiegazione del codice
- Il codice precedente definisce la progettazione di base di una vista front-end delle applicazioni nonché il richiamo delle funzioni di altri livelli in modo che possano essere integrati tra loro.
Livello di accesso aziendale –
Questa è la funzione del livello aziendale che accetta i dati dal livello dell'applicazione e li passa al livello dati.
- La logica aziendale funge da interfaccia tra il livello client e il livello di accesso ai dati
- Tutta la logica aziendale, come la convalida dei dati, i calcoli, l'inserimento/modifica dei dati, viene scritta nel livello della logica aziendale.
- Rende la comunicazione più rapida e semplice tra il client e il livello dati
- Definisce un'attività del flusso di lavoro corretta necessaria per completare un'attività.
// this is the function of the business layer which accepts the data from the //application layer and passes it to the data layer. public class clsStudentInfo { public DataSet GetAllStudentBsIDWise(clsStudent obj) { DataSet ds=new DataSet(); ds=objdt.getdata_dtIDWise(obj);// Calling of Data layer function return ds; } }
Spiegazione del codice
Il codice utilizza la funzione del livello aziendale, che accetterà i dati per il livello dell'applicazione e li passerà al livello dati. I codici del livello aziendale fungono da mediatore tra le funzioni definite nel livello di presentazione e nel livello dati e chiamano le funzioni viceversa.
Livello di accesso ai dati
Questa è la funzione del livello dati, che riceve i dati dal livello aziendale ed esegue l'operazione necessaria nel database.
// this is the datalayer function which is receiving the data from the business //layer and performing the required operation into the database public class clsStudentData // Data layer class { // object of property layer class public DataSet getdata_dtIDUise(clsStudent obj) { DataSet ds; string sql; sql="select * from student where Studentld=" +obj.id+ "order by Studentld; ds=new DataSet(); //this is the datalayer function which accepts the sql query and performs the //corresponding operation ds=objdt.ExecuteSql(sql); return ds; } }
Spiegazione del codice
Il codice definito nel livello del set di dati sopra accetta l'intera richiesta: richiesta dal sistema ed eseguendo le operazioni richieste nel database.
2-Tier Architectura
È simile all'architettura Client-Server, in cui la comunicazione avviene tra client e server.
In questo tipo di architettura software, il livello di presentazione o livello di interfaccia utente viene eseguito sul lato client, mentre il livello del set di dati viene eseguito e archiviato sul lato server.
Non esiste un livello di logica aziendale o un livello immediato tra client e server.
Livello singolo o 1 livello Architectura
È il più semplice poiché equivale a eseguire l'applicazione sul personal computer. Tutti i componenti necessari per l'esecuzione di un'applicazione si trovano su una singola applicazione o server.
Il livello di presentazione, il livello di logica aziendale e il livello di dati si trovano tutti su un unico computer.
Vantaggi e svantaggi del multilivello Architetture
Vantaggi | Svantaggi |
---|---|
Scalabilità | Aumento dello sforzo |
Dati Integrity | Aumento della complessità |
riutilizzabilità | |
Distribuzione ridotta | |
Sicurezza migliorata | |
Disponibilità migliorata |
Pertanto, fa parte di un programma che crittografa i problemi aziendali del mondo reale e determina come i dati possono essere aggiornati, creati, archiviati o modificati per portare a termine l'attività completa.
Livello N ArchiSuggerimenti e sviluppo della tecnica
Considerando che i professionisti del software devono avere il pieno controllo su tutti i livelli dell'architettura, di seguito vengono forniti suggerimenti sull'architettura n-tier
- Prova a disaccoppiare il più possibile i livelli da un altro livello utilizzando una tecnica come soap XML.
- Utilizzare alcuni strumenti automatizzati per generare una mappatura tra un livello di logica aziendale e un livello di database relazionale (livello dati). Gli strumenti che possono aiutare nella modellazione di queste tecniche di mappatura sono: Entity Framework e Hibernate per .Net ecc.
- Nel livello presentatore client, inserisci il più possibile un codice comune per tutti i client in una libreria separata. Ciò massimizzerà la riusabilità del codice per tutti i tipi di client.
- È possibile aggiungere un livello di cache a un livello esistente per accelerare le prestazioni.
Sommario
L'architettura N-tier aiuta a gestire tutti i componenti (livello aziendale, livello di presentazione e livello di database) di un'applicazione sotto lo stesso tetto.
Le applicazioni che utilizzano un numero ridotto di utenti su una rete locale possono trarre vantaggio dall'architettura n-tier.
Tale progettazione architettonica garantisce la manutenzione, l'ampliamento e la distribuzione efficiente di un'applicazione su Internet.