OxyFarm
category:
Software e IIoT
services:
Progettazione architettura software, Sviluppo software
Date:
Gennaio 2024
01. Descrizione
OxyFarm è un progetto che affronta l’importante necessità di tracciare e gestire dispositivi medici distribuiti attraverso le farmacie, garantendo così il totale controllo su tutto il ciclo di vita di ciascun dispositivo. L’obiettivo principale di questo progetto è fornire un sistema robusto ed efficiente che consenta la gestione ottimale di questi dispositivi, garantendo al contempo la massima sicurezza e conformità normativa.
Per raggiungere questo obiettivo, è stata sviluppata un’architettura a microservizi altamente scalabile. Questo approccio architetturale consente una maggiore flessibilità e resilienza, permettendo al sistema di adattarsi dinamicamente alle esigenze in continua evoluzione del cliente. Inizialmente implementata On Premise, questa architettura è stata concepita con la flessibilità necessaria per essere facilmente trasportata nel Cloud, offrendo così la possibilità di sfruttare i vantaggi della scalabilità e della disponibilità offerti da tale ambiente.
La modularità dei microservizi consente una facile integrazione con i sistemi esistenti, riducendo al minimo i tempi di implementazione e migliorando l’efficienza complessiva del sistema. Ogni microservizio è progettato per svolgere specifiche funzionalità, consentendo una migliore gestione e manutenzione del sistema nel suo complesso.
Inoltre, l’architettura a microservizi favorisce la distribuzione agile delle nuove funzionalità e aggiornamenti, consentendo un rapido time-to-market e garantendo che il sistema rimanga sempre all’avanguardia rispetto alle esigenze del settore.
02. Architettura
L’architettura proposta e realizzata prevede servizi che passano per autenticazione e autorizzazione tramite OAuth2, garantendo quindi standard elevati di sicurezza durante il loro utilizzo. L’esposizione sicura dei microservizi avviene tramite un’API gateway le cui principali funzioni includono la gestione delle richieste, l’autenticazione e l’autorizzazione degli utenti, il monitoraggio delle prestazioni, il controllo del traffico, la gestione delle versioni delle API e la conversione dei formati dei dati. Agisce come un punto di controllo centrale per semplificare l’accesso ai servizi e migliorare la sicurezza e le prestazioni complessive del sistema.