In questo articolo, vedremo cosa significa scalare verticalmente o orizzontalmente una risorsa.

La scabilità di una risorsa IT, rappresenta la sua abilità di gestire una crescente richiesta di utilizzo. Per scalare un sistema, in generale possiamo scegliere fra:

  • Scaling Orizzontale (Horizontal scaling): Scalare fuori, scalare dentro (scaling out, scaling in),
  • Scaling Verticale (Vertical scaling): Scalare su, o scalare giù (scaling up, scaling down).

Vediamo quindi nel dettaglio cosa si intende con questi due tipi di scaling.

Scaling Orizzontale

Con scaling orizzontale, si intende l’allocazione o il rilascio delle risorse IT dello stesso tipo. L’allocazione orizzontale di una risorsa, viene definita come scalare fuori (scale out) mentre il rilascio orizzontale di risorse viene definito come scalare dentro (scale in).

Quando vogliamo scalare fuori quindi, intendiamo quindi l’aggiunta di una o più risorse al pool di risorse già disponibili per gestire la quantità crescente di traffico.

 

Scaling Verticale

Con scaling verticale, si intende la sostituzione di una risorsa IT per una con maggiore o minore capacità di gestione del carico. Quando sostituiamo una risorsa per una con maggiore capacità, stiamo scalando in alto; se invece la sostituiamo per una con minore capacità stiamo scalando in basso.

Lo scaling verticale, può essere considerato come l’upgrade (o il downgrade) di una risorsa per aumentarne (o diminuirne) le capacità.

Riassumendo…

Prendiamo come esempio una applicazione web. Visto l’aumento delle richieste, vogliamo scalare il nostro sistema in modo che i server non siano mai sovraccarichi.

  • Se volessimo scalarla orizzontalmente (scale out), dovremmo aggiungere altri server.
  • Se volessimo scalarla verticalmente (scale up), dovremmo prendere i server che abbiamo a disposizione ed eseguire un aggiornamento delle risorse disponibili (tipo aggiungere RAM, migliorare la CPU, aumentare lo spazio di archiviazione ecc).

In generale, non tutte le applicazioni sono facilmente scalabili orizzontalmente e non sempre questa opzioni è possibile. D’altra parte però, lo scaling verticale è limitato dall’hardware attualmente disponibile in commercio.