polito.it
Politecnico di Torino (logo)

Implementazione di un'architettura a microservizi per un algoritmo di calcolo scientifico = Implementation of a microservices architecture for a scientific calculation algorithm

Federico Beltrame

Implementazione di un'architettura a microservizi per un algoritmo di calcolo scientifico = Implementation of a microservices architecture for a scientific calculation algorithm.

Rel. Giovanni Malnati. Politecnico di Torino, Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering), 2024

[img]
Preview
PDF (Tesi_di_laurea) - Tesi
Licenza: Creative Commons Attribution Non-commercial No Derivatives.

Download (1MB) | Preview
Abstract:

Lo sviluppo di software, soprattutto in ambito distribuito, ha evidenziato alcune lacune tipiche delle architetture tradizionali. Una delle soluzioni più diffuse che rientrano in questa categoria prende il nome di monolitica, che ha come caratteristica principale quella di raggruppare in un singolo blocco tutti i servizi che il sistema offre. Questo risulta essere un problema considerevole, principalmente nella correzione di eventuali errori e nell’implementazione di nuove funzionalità nel codice. Questo lavoro di tesi ha come studio principale quello di trovare delle soluzioni alternative a quelle più tradizionali, e tra le varie ipotesi, si è scelto di sviluppare un’architettura a microservizi. Questa soluzione è molto utilizzata nell’ambiente cloud, soprattutto per i svariati vantaggi che essa offre rispetto ad altre soluzioni, come quella monolitica indicata in precedenza. Difatti, si può notare che un’architettura a microservizi permette di definire dei servizi di piccole dimensioni, ognuno con specifiche responsabilità e indipendenti gli uni dagli altri, ma in grado di comunicare tra loro in modo efficiente. Il fatto che l’intero sistema non sia relegato ad un singolo blocco, porta a favorire aggiornamenti e correzioni di eventuali errori senza interrompere l’intera esecuzione del programma. Tuttavia, bisogna prestare attenzione ad altre sfide, come ad esempio lo studio sui collegamenti tra i vari microservizi, in modo tale che essi possano comunicare. Tutto ciò risulta essere un problema accettabile, in quanto rimane un metodo efficiente per la creazione di software. Questo approccio, porta ad un cambiamento nella visione totale del sistema, favorendo uno sviluppo orizzontale aggiungendo repliche dei microservizi, a discapito di uno sviluppo più verticale basato sull'aumento della potenza di calcolo della singola macchina dove il servizio viene eseguito. Nella tesi viene presentata un’implementazione di un’architettura a microservizi, che sarà integrata con un programma chiamato EC700, software proprietario dell’azienda Edilclima. L’obiettivo è quello di creare un’architettura in grado di ospitare un programma che effettua calcoli scientifici, anche di complessità elevata in ambito computazionale, e che possa essere eseguito in ambiente cloud, in modo sicuro e ottimale. I risultati acquisiti testando l’intera soluzione sono incoraggianti, in quanto le prestazioni ottenute sono risultate positive.

Relatori: Giovanni Malnati
Anno accademico: 2023/24
Tipo di pubblicazione: Elettronica
Numero di pagine: 98
Soggetti:
Corso di laurea: Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering)
Classe di laurea: Nuovo ordinamento > Laurea magistrale > LM-32 - INGEGNERIA INFORMATICA
Aziende collaboratrici: EDILCLIMA srl
URI: http://webthesis.biblio.polito.it/id/eprint/31816
Modifica (riservato agli operatori) Modifica (riservato agli operatori)