Vantaggi e svantaggi di sistemi distribuiti

September 1

Vantaggi e svantaggi di sistemi distribuiti


Come le tecnologie Internet e di rete hanno avanzato in sofisticazione e affidabilità, gli ingegneri hanno creato un nuovo modo di gestire i servizi informatici: sistemi distribuiti. Invece di centralizzazione dei dati e potenza di calcolo in un unico luogo poi inviarlo ai clienti, sistemi distribuiti diffondono sia i dati e le attività di calcolo su più nodi che funzionano all'unisono. Mentre questo tipo di sistema ha molti vantaggi, non è privo di inconvenienti.

Prestazione

I sistemi distribuiti consentono maggiori prestazioni di servizio complessiva rispetto ai sistemi la cui funzione è centralizzata in un unico luogo. Diffondendo il carico computazionale attraverso diversi nodi, ogni posizione è sotto meno stress. Questo permette a ciascun nodo di eseguire in modo più efficiente, il che aumenta le prestazioni del servizio complessivo. Un esempio di come funziona è in servizi di messaggistica alta domanda. Invece di pratiche di dumping il carico per ogni transazione utente corrente in un unico server, le transazioni sono distribuite su un certo numero di server diversi. In questo modo, la domanda di ogni singolo nodo è ridotta, ed i dati ogni nodo riceve percolato ad altri nodi in background.

Affidabilità

Quando il calcolo è centrato intorno ad una singola macchina, la salute di tale macchina è la salute dell'intero servizio --- se scende, così l'intero servizio. Tuttavia, i sistemi distribuiti possono continuare a funzionare se un nodo cessa di funzionare. Mentre le richieste di prestazioni sugli altri nodi saliranno, come sarà lo stress ogni macchina è sotto, gli altri nodi saranno ancora lavorare. Tuttavia, fallimento in una soglia critica di nodi può ancora portare il servizio verso il basso.

Scalabilità

Poiché i sistemi distribuiti funzionano attraverso una varietà di macchine diverse, essi sono intrinsecamente scalabile. Cioè, il sistema distribuito in grado di regolare quante risorse del sistema si sta facendo uso di alla luce di quale tipo di domanda il sistema è sotto. Se un sistema è in fase di forte domanda, allora si può avere ogni macchina che esegue alla capacità. Tuttavia, se il carico sul sistema è relativamente bassa, può assumere diverse componenti del sistema distribuito offline per risparmiare energia e l'usura sul sistema. Quando la domanda sul sistema risale, questi componenti possono tornare in linea.

Sincronizzazione

Quando i servizi eseguiti su un singolo server, non vi è alcuna preoccupazione per la sincronizzazione dei dati: tutti i dati sono semplicemente presenti su quella macchina. Tuttavia, questo diventa un problema in sistemi distribuiti. Poiché le diverse componenti del sistema distribuiti gestiscono compiti e dati diversi in un dato punto nel tempo, ci saranno piccoli periodi di tempo in cui vi sono dati su un componente, ma non su altri. Finché questo nodo di sistema rimane in linea lungo abbastanza per questi dati temporaneamente uniche percolare indietro per altri nodi, questo non è un problema. Tuttavia, se un nodo va giù prima che prolifera suoi dati unici, ci sarà incongruenze all'interno del sistema.