"Il cloud computing" è un termine generico pensato per fare due cose: in primo luogo, astrarre tutti i possibili usi di un modello client-server dietro un singolo termine, al contrario di casi d'uso più specifici come "file server", "database server "," server web "," server applicazioni "ecc .; e in secondo luogo, per astrarre l'architettura del server stesso, in termini di hardware, topologia, posizione e persino proprietà.
In un modello client-server tradizionale, che è ancora oggi di uso comune, un client si connette a un server che esegue un particolare lavoro. Questo server può ospitare un database o una serie di condivisioni di file o una pagina web. Quando il client si connette a quel server, vi è una comprensione implicita del tipo di comunicazione e trasmissione dei dati che deriverà tra i due computer. Potrebbe anche esserci una comprensione da parte del cliente o dell'utente finale delle capacità dell'hardware del server e dei suoi limiti. Questo "accoppiamento stretto" relativamente tra la macchina client e il suo server può porre problemi a un amministratore di sistema che deve rimuovere un server per la manutenzione; tutte le applicazioni dipendenti dalle risorse fornite da questo server devono essere puntate su un altro server, e non tutte le applicazioni e le infrastrutture sono progettate con questo tipo di ridondanza e tolleranza di failover in mente.
In un modello cloud, l'hardware, la topologia, la divisione del lavoro e persino il numero di macchine reali coinvolte sono tutte estratte dietro un singolo endpoint. L'analogia potrebbe essere attirata su una moderna "web application", in contrasto con le vecchie generazioni di "siti web" che erano più statici. Potremmo supporre che dietro le quinte ci siano un server applicativo e un server DB, ma non dobbiamo preoccuparcene; il web server, come parte del suo lavoro per servire l'intera applicazione agli utenti oltre il "bordo", fornisce un endpoint unificato che consente l'accesso controllato a tutti i dati e servizi forniti da altre macchine dietro questa porta principale.
Il risultato è che, con un unico endpoint esposto a fornire la funzionalità dell'applicazione, è tutto ciò di cui un utente consumatore dell'applicazione deve preoccuparsi, invece di dove ottenere i dati, dove chiamare tale e così processo di applicazione remota, ecc; ciò significa che gli amministratori e gli architetti del fornitore di servizi all'interno di questo cloud sono più o meno liberi di modificare le macchine, la topologia e altri specifici dettagli di implementazione di questo "servizio cloud" senza che i client siano più saggi. Se pensasse che fosse saggio, Facebook potrebbe ricostruire da zero l'intero sistema di archiviazione dati utilizzando un DBMS diverso e tutti i nuovi server, e finché il sito rimarrà disponibile durante la transizione, nessuno sarebbe mai più saggio; Infatti, Facebook ha fatto proprio questo, molte volte, espandendosi da un sito ospitato dalla macchina personale di Mark Zuckerberg in una stanza del dormitorio ad un hosting dedicato fuori dal campus, a server farm in diverse località in tutto il mondo.