Skip to main content

Ogni organizzazione si reinventa progressivamente attraverso la Digital Transformation. Web, mobile, social, Artificial Intelligence e applicazioni IoT sono canali che creano valore, ma generano anche un impatto sui sistemi: il volume di chiamate, la velocità e l’accesso ai dati dai vari canali di Front End stanno mettendo in difficoltà i sistemi legacy e i mainframe.
La sfida dei CIO è riuscire a innovare e soddisfare le richieste del business vincendo i limiti dei sistemi legacy: vediamo come farlo utilizzando un layer applicativo basato su logiche event-driven.

Gestire i legacy con una soluzione event-driven

L’accelerazione digitale è oggi una necessità per ogni azienda: per ottenerla, possiamo introdurre un set di dati aggiornati in modo event-driven che permette alle applicazioni front-end di funzionare in modo veloce e affidabile.

Le soluzioni event-driven gestiscono i processi aziendali basandosi sugli eventi, ossia i cambiamenti di stato di un sistema software che attivano in risposta altri processi e azioni, senza dipendere da un determinato dato o tecnologia.

Questo è realizzabile costruendo un processo che replica l’accesso dei dati dei sistemi legacy attraverso un layer applicativo performante, lasciando i sistemi legacy interni inalterati e restituendo i dati in near real time: possiamo parlare di offloading dei legacy.
Il risultato è un’ottimizzazione delle performance dei sistemi dei canali digitali (applicazioni web o mobile) e della fruibilità dei dati, insieme alla garanzia di adeguate prestazioni dei canali frontend ed efficienza e resilienza del sistema grazie alle logiche asincrone.

Vediamo come si concretizza a livello di processo.

Introdurre un layer per l’offloading dei legacy

Per creare un layer applicativo in grado di sollevare i sistemi legacy dal carico delle chiamate del frontend, abbiamo bisogno di tre componenti:

1

i legacy interni

2

una componente asincrona che “traghetta” i dati su un database high perfomance e aggrega in dati

3

il running delle applicazioni frontend

Entriamo più nel dettaglio con uno schema:

I processi di un’azienda utilizzano i sistemi legacy: i dati che il legacy utilizza vengono conservati su database.

Per evitare che i frontend interroghino direttamente i legacy, risultando in una User Experience estremamente rallentata, inseriamo una componente Change Data Capture (CDC), che lavorando in modalità event-driven prende i dati di cambiamento e li passa ad Apache Kafka, piattaforma open source di data streaming per gestire e distribuire enormi flussi di dati provenienti da diverse sorgenti, ad alta velocità e a bassa latenza. L’aggiornamento di questi dati avviene in near real time.

È possibile espandere lo scenario: i dati possono arrivare a Kafka anche da altri canali, come per esempio via File e via API.

Abbiamo quindi due microservizi, orchestrati all’interno di Kubernetes: il primo è per la generazione delle rappresentazioni dei dati (microservizio Generator), ossia rappresentazioni astratte dei dati sparsi nei legacy. Queste rappresentazioni vengono inserite su MongoDB, un database high performance: via API, le applicazioni frontend accedono ai dati di cui hanno bisogno direttamente elaborati e aggregati, passando da un secondo microservizio di lettura delle rappresentazioni dei dati (microservizio Reader).
Tutto questo avviene in modo completamente indipendente dal funzionamento e dal carico dei sistemi legacy. Questo significa che tutto il carico delle applicazioni di frontend non impatta sul sistema legacy, arrivando perfino a contemplare il caso di indisponibilità di quest’ultimo nel quale i canali di frontend continuerebbero a funzionare con i dati già portati in MongoDB.

Perché scegliere una soluzione di questo tipo?

Performance e User Experience

Una soluzione di legacy offloading abilita una risposta quasi istantanea alle chiamate del frontend, migliorando esponenzialmente la User Experience: basandosi su un sistema performante con la possibilità di scalare, permette di rispondere al potenziale incremento del volume di accessi dai nuovi canali e dell’incremento del numero di utenti.

Agilità di sviluppo delle applicazioni di frontend

Un layer applicativo di legacy offloading basato sulle moderne tecnologie a API aiuta gli sviluppatori a implementare le nuove applicazioni più velocemente rispetto al modello di accesso al legacy/mainframe: questo agevola notevolmente le lavorazioni lato frontend.

Riduzione dei costi

Aumentare le risorse di un sistema legacy, come ad esempio Sistemi SAP, Oracle, AS-400 e simili, comporta costi molto alti: ridirigere le richieste di accesso ai dati dei nuovi sistemi di Front End dai legacy a un layer applicativo diverso può portare a un taglio fino al 20%-50% della riduzione delle chiamate dirette ai legacy / mainframe.

 

Scegliere una soluzione event-driven, secondo la nostra esperienza, è la chiave per costruire processi in grado di rispondere alle moderne sfide architetturali e di evolvere in base ai cambiamenti delle esigenze nel tempo.

Hai bisogno di aiuto per gestire il carico che ricade sui tuoi sistemi legacy?

SCOPRI IL SERVIZIO GESTITO
3.0/5.0 Article rating
2 Reviews
Cosa ne pensi dell'articolo?
  1. Amazing
  2. Good
  3. Bad
  4. Meh
  5. Pff
Paolo Quaglia
API strategist e IT expert

Oltre 20 anni di esperienza in Intesys nell’IT, applicata ai servizi e alle architetture per le aziende, consentono a Paolo di accompagnare CIO e IT manager in complessi progetti di Digital Transformation.

NEWSLETTER