Seguici su Telegram, ne vale la pena ❤️ ➡ @trovalost
Vai al contenuto

Servizi in cloud: cos’è la scalabilità  in orizzontale e in verticale

Quando si decide di sfruttare una soluzione cloud pura – per intenderci, ad esempio, quelle di Seeweb – ci sono molti aspetti che i manager ed il reparto IT dovrebbero prendere in considerazione: la creazione e manutenione di un’infrastruttura cloud non è mai banale, e richiede competenze certamente non alla portata di chiunque. Costi, valutazioni sulla sicurezza o sulla performance sono in genere variabili che condizionano questo tipo di valutazioni, anche se bisognerebbe ragionare pure sul tipo di requisiti del software, del sito o del web service che si vorrebbe mettere in piedi. Elasticità  e scalabilità , in questo contesto, giocano un ruolo fondamentale a livello di opportunità .

In Italia normalmente sui vari siti di settore si parla di scalabilità  con maggiore frequenza: la scalabilità  corrisponde con la capacità  del sistema cloud di aumentare o diminuire la potenza di calcolo, esattamente come avverrebbe con un elastico che può allungarsi o accorciarsi (…e spezzarsi, per inciso). In casi più specialistici si usa anche il termine elasticità , che possiede un significato simile anche se leggermente più avanzato.

Elasticità  (o elasticity)

L’idea dietro l’elasticità  è quella di dare al sistema esattamente le risorse che siano esattamente necessarie, evitando cosଠsovradimensionamenti (costi inutili e sofferenza finanziaria, insostenibilità ) o sottodimensionamenti (sofferenza tecnologica). In quest’ottica l’elasticity si fa coincidere con una politica di gestione delle risorse che sia davvero efficente e funzionale, e si realizza in vari modi: uno dei più comuni è quello di ricorrere alla scalabilità  in orizzontale oppure in verticale. In linea di massima, poi, la scalabilità  può essere più granulare e mirata all’applicazione specifica di quanto non avvenga per l’elasticità , fermo restando che i due termini sono sostanzialmente simili tra loro.

Scalabilità  (cloud scalability)

La scalability fa riferimento all’idea in cui un sistema che debba gestire più applicazioni o porzioni di infrastruttura si possa espandere o contrarre a piacere. Il concetto è semplice, in effetti, quanto fraintendibile per chi non sia del mestiere (e non si capisce, a volte, perchè dovrebbe occuparsene: eppure succede, purtroppo, e questo per via di una generica malitesa organizzazione, nonchè asettica suddivisione dei ruoli in azienda). Dovrebbe essere un informatico esperto, un consulente IT o un programmatore che dovrà  lavorarci a decidere in autonomia quali e quante risorse spendere su una certa app. La scalabilità  è semplificata dalla tecnologia, ad oggi, ma richiede ugualmente buone competenze organizzative e progettuali: altrimenti rischia di diventare troppo complessa da gestire.

In genere, pertanto, la scalabilità  del cloud è la capacità  del sistema di aumentare le risorse a disposizione in caso di picchi di richieste, e ridurle al decrescere delle stesse: questo si riflette sia sulle prestazioni (che dovrebbero essere ottimali) sia sui costi (che dovrebbero essere più contenuti di quanto avvenga, ad esempio, acquistato un server dedicato e pagandolo una tantum comunque sia). Un cloud scala le risorse che davvero gli servono, e può farlo in due modi diversi, ovvero in orizzontale e in verticale.

Scalabilità  verticale

In questo caso si vanno ad aggiungere in parallelo (oppure a rimuovere) risorse hardware vCPU, CPU, RAM, spazio su disco, banda. àˆ un concetto di scalabilità  relativamente semplice e permette di aumentare la potenza di calcolo e le risorse a disposizione dell’applicazione. Possiamo aggiungere hard disk SSD, RAM o CPU allo scopo di aumentare le disponibilità  di potenza del sistema, e l’app ovviamente ne risentirà  in positivo a vari livelli.

Molti servizi famosi in cloud – come ad esempio AWS di Amazon – offrono un’interfaccia abbastanza semplice per scalare in verticale. La scalabilità  in verticale offre benefici quasi immediati in termini di prestazioni, ma ovviamente incide sui costi e porta facilmente a casi di sovradimensionamento – allocare più potenza di quella davvero necessaria.

Scalabilità  orizzontale

In questo caso si vanno ad aggiungere in parallelo (oppure a rimuovere) nuove macchine cloud per facilitare il lavoro. Sembra più semplice del caso precedente ma non lo è, perchè significa aggiungere nuove macchine e quindi, come diretta conseguenza, maggiore complessità  al sistema. In questi termini è considerata un vantaggio soltanto nel lungo periodo, a differenza del caso precedente, e visto che le macchine vanno comunque configurate.

A quali applicazioni potrebbe servire la scalabilità ?

Non è chiaro quasi a nessuno, per la verità , quando abbia senso applicare concetti di elasticità  o scalabilità  al cloud: eppure i casi concreti non mancano, e vanno dalle applicazioni di e-commerce più avanzate al Saas (Software as a Service, ovvero i web service venduti al cliente finale “a consumo”, come fa Google Cloud ad esempio), a molti tipi di app mobile che prevedano un pubblico parecchio vasto. La cosa essenziale per poter sfruttare in modo sensato la scalabilità  corrisponde con un grosso carico di lavoro da dover gestire, sia a livello di processo generale che a livello puntuale.

Anche semplici portali e blog, in certi casi, possono sfruttare in modo favorevole i benefici di un’infrastruttura cloud ben organizzata a livello di scalabilità .

Vantaggi della scalabilità

Il primo vantaggio è legato sicuramente ad una performance maggiore: le app risponderanno più velocemente, i tempi di risposta saranno più veloci – ammesso che si sia deciso di scalare risorse critiche per il sistema: ad esempio potrebbe essere inutile aumentare la RAM, se il problema dell’app è relativo ad una grossa potenza di calcolo richiesta. Un altro vantaggio potrebbe essere legato, poi, alla tolleranza agli errori ed alla ridondanza del sistema, in quanto aggiungendo più macchine che possano fare lo stesso lavoro è più facile risolvere situazioni di conflitto o di sovraccarico del sistema, smistando in parallelo le varie richieste dei client. I cloud, inoltre, permettono di sviluppare piattaforme di microservice – un concetto simile al SaaS, in effetti – ed in questo la scalabilità  nelle due dimensioni viste gioca un ruolo fondamentale.

👇 Da non perdere 👇



Trovalost.it esiste da 4462 giorni (12 anni), e contiene ad oggi 6694 articoli (circa 5.355.200 parole in tutto) e 13 servizi online gratuiti. – Leggi un altro articolo a caso
Non ha ancora votato nessuno.

Ti sembra utile o interessante? Vota e fammelo sapere.

Questo sito contribuisce alla audience di sè stesso.
Il nostro network informativo: Lipercubo.it - Pagare.online - Trovalost.it.