Abbiamo sei sistemi molto vecchi in cui è stato costruito il più recente 1995. Tutti questi sistemi hanno processi batch che vanno da mezzanotte alle 6 del mattino ogni notte, e questi sistemi sono offline. Oltre a questi sei sistemi esiste un'API da cui diversi canali accedono ai dati dai sei sistemi. Naturalmente ogni canale è offline anche tra queste ore, poiché dipendono dall'API che dipende in base ai sei sistemi mainframe (vedi disegno schematico sotto).
Ora abbiamo nuove regole aziendali che dicono che i canali devono essere online 24 ore su 7, 7 giorni alla settimana. La nostra interpretazione è che i clienti devono essere in grado di accedere ai propri dati, anche se i sistemi sottostanti sono offline a causa di processi di elaborazione batch.
Quindi, la mia domanda è: come possiamo sfruttare l'API, sincronizzare e archiviare i dati da utilizzare quando i sistemi sottostanti sono offline? Usiamo un meccanismo di memorizzazione nella cache o costruiamo un'applicazione di database che sincronizza i dati in una pianificazione?
Ulteriori informazioni basate sul feedback nei commenti
-
Puoi chiarire se i sistemi sono di solito online, ovvero gestire le richieste per l'API?
- I sistemi sono online tra le 6 del mattino e a mezzanotte. I canali sono online 24 ore su 24, ma senza accesso ai sistemi da mezzanotte alle 6.
-
Le operazioni API eseguono regole aziendali o richiedono solo dati dai sistemi sottostanti?
- l'API richiede e riceve solo dati. Il disegno è eccessivamente semplificato, ma la logica aziendale vive nei sistemi sottostanti 1-6.
-
Ci sono motivi specifici (come il costo dell'hardware, i rischi di modifica del codice) perché i sistemi non possono essere duplicati in modo che un sistema possa gestire le operazioni batch mentre l'altro risponde alle richieste API?
- Non sono sicuro, devo scavare più a fondo per rispondere. Il costo è sempre un fattore, ma non nella misura in cui fermerebbe un bisogno aziendale come questo.
-
Sarebbe possibile accodare le richieste API ed eseguirle dopo che i sistemi sono tornati online?
- Non proprio. È un sistema assicurativo, e i clienti vogliono solo accedere ai propri dati come quando sono dove i sistemi sono online.
-
In genere un canale B2B supporta le richieste di ordini come ordini. Anche gli altri due canali potrebbero supportare gli invii. Sei sicuro che sia limitato al recupero dei dati?
- Al momento, in questo caso ci sono limitazioni ai vecchi sistemi. Vogliamo mostrare assicurazioni, termini, documenti ma non apportare modifiche durante le ore offline. Ma nel periodo di 5-6 anni, i vecchi sistemi saranno sostituiti da un sistema più recente e da allora saranno supportati. Questo non è l'ideale, ma un compromesso tra esigenze aziendali e vincoli tecnici.