Sviluppo di un servizio distribuito per la reportistica del traffico per un operatore telefonico.
View/ Open
Author
Pedrazzi, Simone <1994>
Date
2026-10-15Data available
2026-10-22Abstract
La presente tesi descrive l’attività di tirocinio svolta presso Base Digitale Platform S.p.A., finalizzata alla modernizzazione di un sistema per la generazione di report di traffico destinato a operatori telefonici. Il sistema preesistente, denominato GenService e sviluppato in .NET Framework 4.8 secondo un’architettura monolitica, presentava limitazioni relative alla modularità, alla manutenibilità e alla possibilità di elaborare concorrentemente le richieste e distribuire il carico di lavoro su più istanze. Tesi_Finale
Il progetto ha portato allo sviluppo di CarrierService, un nuovo servizio basato su .NET 8 e ASP.NET Core. La soluzione separa la gestione della coda dei comandi dalla generazione dei report e introduce un modello di elaborazione parallela configurabile. Per consentire l’esecuzione contemporanea di più istanze del servizio evitando elaborazioni duplicate, è stato inoltre implementato un meccanismo di locking distribuito basato su Redis. L’architettura utilizza Entity Framework Core per l’accesso ai dati e adotta pattern quali Repository, Adapter, Options e Result, con l’obiettivo di ridurre l’accoppiamento tra le componenti e migliorarne manutenibilità ed estensibilità. This thesis describes the internship project carried out at Base Digitale Platform S.p.A., aimed at modernizing a traffic reporting system for telecommunications operators. The existing system, called GenService, was developed using .NET Framework 4.8 according to a monolithic architecture and presented limitations in terms of modularity, maintainability, concurrent request processing, and the ability to distribute the workload across multiple application instances. Tesi_Finale
The project led to the development of CarrierService, a new service based on .NET 8 and ASP.NET Core. The proposed solution separates command queue management from report generation and introduces a configurable parallel processing model. To enable multiple service instances to operate simultaneously while preventing duplicate processing, a distributed locking mechanism based on Redis was also implemented. The architecture uses Entity Framework Core for data access and adopts patterns such as Repository, Adapter, Options, and Result to reduce coupling between components and improve maintainability and extensibility.
Type
info:eu-repo/semantics/bachelorThesisCollections
- Laurea Triennale [5454]

