Sai che, non sempre, un solo computer riesce a fare ciò di cui il mondo ha bisogno? A tal proposito, ti spiegherò cosa significa calcolo distribuito: rimarrai sorpreso!
Anche se non sei un programmatore o non hai intenzione di studiare informatica da grande, sapere cosa significa calcolo distribuito può aiutarti a capire tante dinamiche altrimenti oscure e, perché no, qualche documento letto qui e là per la rete! In parole semplici, il calcolo distribuito è un settore dell’informatica che studia i metodi per far lavorare insieme più computer collegati tra loro (tramite una rete locale o Internet) al fine di ottenere un obiettivo comune. Il lavoro viene “coordinato” tramite lo scambio dei messaggi da un computer all’altro. Del calcolo distribuito fanno parte, tra le altre cose, i sistemi distribuiti – ovvero i computer che sanno lavorare insieme – e la programmazione distribuita, ovvero la creazione di tutti quei programmi (“programmi distribuiti”) che vanno usati sui sistemi distribuiti.
Puoi pensare al calcolo distribuito come alla struttura di un team che lavora ad un’automobile: c’è chi si occupa del motore, chi si occupa della carrozzeria, chi della meccanica e chi dell’elettronica; ciascuno di questi quattro personaggi comunicherà agli altri l’esito del proprio lavoro, in modo che tutto il resto del team possa regolarsi e sincronizzarsi (ovvero seguire tempi simili). Alla fine del lavoro dei singoli membri del team, il membro addetto all’assemblaggio si occuperà di costruire l’intera automobile.
Vedi l’intero team come un sistema distribuito, ogni singolo membro come i computer che fanno parte di questo sistema e l’automobile completa come l’obiettivo comune di tutti i computer – dunque dell’intero sistema distribuito. Ognuno dei computer riceverà un dato compito, che dovrà portare a termine per partecipare al risultato finale!
Puoi trovare esempi di calcolo distribuito in tantissimi settori: gli ISP usano spesso dei server distribuiti, così come i gestori di hosting, i grandi server dedicati ai complessi calcoli matematici o, ancora, i sistemi che si occupano di creare complesse simulazioni in 3D o quelli usati per i viaggi interplanetari. Ma questi, come ti ho detto, sono soltanto alcuni esempi!