2009-07-25 17 views
10

Cosa significa architettura/design N-Tiered e N-Layered?Architettura N-Tiered e N-Layered

C'è qualche differenza tra architettura N-Tiered e N-Layered/design?

Se sì, qual è la differenza?

+0

correlati: http: // stackoverflow.com/questions/120438/whats-the-difference-between-layers-and-tiers – Marijn

risposta

15

Le persone usano spesso i due termini in modo intercambiabile in quanto possono descrivere un'architettura come sia a più livelli che a più livelli. La mia opinione è che generalmente un livello si riferisce ad una separazione fisica mentre uno strato è più di una separazione logica.

Ad esempio, una tipica applicazione Web, direi, ha un front-end - ciò che viene visualizzato nel browser - e la reale logica dell'applicazione in esecuzione sul server delle applicazioni e un database. Questo può essere indicato come a 3 livelli, dal momento che esiste un server di database, un server di applicazioni e il computer client. Con la stessa facilità, si può fare riferimento al livello database, al livello logico e al livello di presentazione (o interfaccia utente).

14

N livelli si riferisce ai livelli "distribuiti" di un sistema (vale a dire server e client), mentre n-livelli si riferisce ai livelli in un programma autonomo; anche se i due sono spesso usati in modo intercambiabile, alcuni suggeriscono che c'è una differenza significativa (come quella che ho menzionato sopra), come visto nei primi paragrafi su Multitier architecture e Multilayered architecture su Wikipedia spiega la differenza.

+0

+1: riferimenti. –

+0

Grazie per il voto! –

0

Questo SCEA Study Notes spiega le differenze tra l'architettura JEE livelli e livelli

Livelli di un sistema Java EE

* Client (GUI and Web): GUI directly interacts with web tier. Web uses browser, applets to interact with web server through HTTP. Responsible for direct presentation and interaction with user. 
* Web components: processes web requests. Acts as mediator between clients and business components. 
* Business: (solves domain-specific) business problems. The abstract business logic processing happens in this tier. 
* Integration and Resource: handles connectivity with data stores and other (legacy) systems. 

livelli di un sistema Java EE

* Virtual platform (component APIs): used to implement/support business logic. API Components include: JavaBeans, Java Servlets, JavaServer Pages/Faces, Java Message Service API, Java Transaction API, etc. 
* Application infrastructure (container): responsible for executing the application. Also provides services like: security, transactions, JNDI, and other connectivities. 
* Enterprise services (OS): responsible for the execution environment of the application infrastructure. Provides computing time and access to (abstract) hardware. 
* Compute and storage: the hardware or physical server. Provides computing power for the OS. 
* Networking infrastructure: responsible for networking services.