Le principali architetture dei sistemi distribuiti

Le principali architetture dei sistemi distribuiti

Generalmente l’architettura di un Sistema distribuito fa esplicito riferimento all’architettura software del sistema distribuito cioè al “come” i componenti software sono organizzati e al “come” essi interagiscono.
Tuttavia l’effettiva realizzazione di un Sistema distribuito presuppone che i software siano locati su macchine fisiche per cui l’istanziazione finale del Sistema distribuito prende il nome di architettura di sistema.

Le principali architetture dei sistemi distribuiti

Architetture centralizzate

Stratificazione delle Applicazioni

Nel modello client-server si parla in maniera distinta di queste due entità, tuttavia, se, per esempio, un server debba fare continuamente delle interrogazioni ad una base di dati, vuol dire che esso si sta comportando da client.
Dunque la distinzione fra i due attori non è così netta,ed è per questo che si è reso necessario, principalmente per applicazioni destinate a consentire agli utenti di avere accesso alle basi di dati, estrinsecare la struttura a livelli di una singola applicazione, così distribuita:
– livello interfaccia utente
– livello applicativo
– livello dei dati

Architetture Multilivello

La stratificazione dei livelli logici di un’applicazione, come visto in precedenza, suggerisce come sia possibile considerare diversi scenari di distribuzione fisica di un’applicazione client- server su molteplici macchine.
Single Tier -> configurazione composta da un terminale stupido ed un mainframe
Two Tier -> configurazione composta da due livelli fisici (client – server)
Three Tier -> configurazione a tre livelli fisica (client – livello intermedio – server) (es. TP monitor)

Architetture decentralizzate

L’organizzazione di architetture client – server multilivello, basata sull’utilizzo di una macchina diversa per implementare ciascun elemento logico si dice distribuzione verticale.
Questo tipo di distribuzione permette di creare una corrispondenza biunivoca tra funzioni appartenenti ad un livello logico e relativa macchina su cui implementarle.
La distribuzione orizzontale, invece, prevede un’organizzazione basata sull’indipendenza di ciascun componente, ovvero, ciascun nodo possiede tutti e tre i livelli dell’applicazione client – server.

Reti P2P

Le reti di P2P basano il loro funzionamento sulla cooperazione fra processi, in maniera del tutto simmetrica, organizzati in una rete di overlay, i cui collegamenti sono costituiti dai canali di comunicazione (connessioni TCP).
Le reti P2P non strutturate sono basate sulla creazione della rete di overlay in maniera del tutto non deterministica, per questo, spesso, necessitano dell’introduzione di nodi Super Peer, che si occupino di fare da mediatori fra i vari Peer.
Le reti P2P strutturate prevedono la creazione della rete di overlay in maniera deterministica.

Architetture ibride

Sistemi edge – server

Lo scopo di un edge – server (posto ai confini tra la rete locale e l’internet vera e propria) è quello di fornire dei contenuti agli utenti che ne facciano richiesta, secondo un sistema di autenticazione stabilito generalmente dagli ISP.

Sistemi distribuiti Collaborativi -> Torrent

Precedente Gli stili architetturali software dei sistemi distribuiti Successivo Definizione e caratteristiche della griglia computazionale (sistemi distribuiti)

Lascia un commento

*